*{box-sizing:border-box}body{margin:0;background:#111916;color:#e9ecdf;font:15px/1.55 system-ui,Arial}header{padding:22px 5%;border-bottom:1px solid #334037;display:flex;justify-content:space-between;gap:16px}header a{color:#e9ecdf;text-decoration:none;font-weight:900;letter-spacing:4px}header span,.eyebrow{font-size:11px;letter-spacing:2px;color:#b1c19a}main{max-width:1160px;margin:40px auto;padding:0 24px}h1{font-family:Georgia,serif;font-size:clamp(32px,5vw,56px);line-height:1.12;margin:15px 0 25px}h2{font-size:19px;margin:10px 0 18px}.muted,small{color:#a4afa5;font-size:13px}#creation{max-width:800px;margin:65px auto}input:not([type=radio]){display:block;width:100%;padding:14px;background:#1c2821;border:1px solid #465447;color:white;border-radius:6px;margin:10px 0 20px;font:inherit}.races{display:flex;gap:15px;margin:20px 0}.races label{flex:1;background:#202c24;border:1px solid #465447;padding:20px;border-radius:8px;cursor:pointer}.races label:has(input:checked){border-color:#c4df89;background:#29362a}.races small{display:block;margin-top:12px}button{background:#c7dc8a;color:#172018;border:0;padding:12px 18px;font-weight:750;border-radius:5px;cursor:pointer}button:hover{filter:brightness(1.1)}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible{outline:3px solid #f1bf6b;outline-offset:3px}.layout{display:grid;grid-template-columns:310px 1fr;gap:22px}.panel{background:#1b2620;border:1px solid #354439;padding:24px;border-radius:10px;margin-bottom:22px}.title{display:flex;justify-content:space-between;align-items:center;gap:16px}.wallet{text-align:right;font-size:30px;color:#e4c277}.wallet small{display:block;font-size:10px;letter-spacing:2px}.stat{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #344238}.stat button{padding:7px 10px}.weapon{width:100%;margin:4px 0;background:#2b3b30;color:#d9e4d5;text-align:left}.weapon.active{outline:1px solid #c7dc8a}.enemy{display:flex;justify-content:space-between;align-items:center;padding:17px 0;border-top:1px solid #354439;gap:12px}.enemy small{display:block}.arena{height:245px;background:radial-gradient(ellipse at 50% 100%,#596044,#263c30 50%,#18221e);border-bottom:5px solid #6b7150;display:flex;align-items:center;justify-content:space-around;overflow:hidden;border-radius:8px}.fighter{width:38%;text-align:center;transition:transform .15s}.fighter svg{height:150px;width:100%}.fighter.hit{transform:translateY(-9px)}.versus{color:#d4c18f;font:italic 22px Georgia}progress{width:90%;height:10px;accent-color:#b8d57e}.hp{display:block;font-size:11px}#portrait svg{width:100%;height:150px}#outcome{font-weight:700;color:#e4c277}#log{max-height:150px;overflow:auto;color:#a4afa5;font-size:12px;margin-top:14px}footer{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#a4afa5}.quiet{background:transparent;color:#a4afa5;border:1px solid #465447}#record{font-size:12px;color:#a4afa5}[hidden]{display:none!important}@media(max-width:750px){.layout{grid-template-columns:1fr}header span{display:none}.races{flex-direction:column}main{padding:0 15px;margin:25px auto}.panel{padding:18px}#creation{margin:30px auto}.enemy{align-items:flex-start}.fighter svg{height:115px}.arena{height:215px}}
.app-shell{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px}.side-nav{align-self:start;position:sticky;top:20px;padding:18px 0}.side-nav button{display:block;width:100%;margin:8px 0;text-align:left;background:transparent;color:#c4cebf;border:1px solid #354439}.side-nav button.active{background:#c7dc8a;color:#172018}.side-nav .muted{margin-top:32px;line-height:1.8}.pages{min-width:0}#page-hero #portrait{float:right;width:180px}#page-hero #stats{max-width:430px}#page-hero h2{clear:both}.equipped-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid #354439}.equipped-row small{display:block}.equipped-row button{padding:7px 12px}.item-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}.item-card{background:#14201a;border:1px solid #354439;border-radius:7px;padding:18px;display:flex;flex-direction:column;gap:8px}.item-card strong{font-size:17px}.item-card p{font-size:13px;margin:4px 0}.item-card button{margin-top:auto}.page-heading{font-family:Georgia,serif;font-size:34px}.village-banner{min-height:240px;background:linear-gradient(120deg,#354d38,#1b3027);border:1px solid #51644c;border-radius:8px;padding:30px;margin-bottom:24px}.village-banner h2{font:32px/1.2 Georgia,serif;margin:18px 0}.village-banner p{color:#bbc6b4}.place{display:flex;gap:24px;width:100%;padding:24px;text-align:left;background:#2c392a;color:#e9ecdf;border:1px solid #8f9c62}.place strong{font:26px Georgia,serif}.place p{font-weight:400;font-size:14px;color:#b8c2ae}.place span:last-child{color:#ccdf96}.building{font:80px/1 Georgia,serif;align-self:center}#shop-tabs{display:flex;gap:8px;flex-wrap:wrap}#shop-message{color:#d6df9a;min-height:24px}#total-stats{color:#d4bd7c;max-width:440px}@media(max-width:750px){.app-shell{grid-template-columns:1fr;gap:12px}.side-nav{position:static;display:flex;gap:7px;padding:0}.side-nav p{display:none}.side-nav button{text-align:center;padding:12px 8px}.item-grid{grid-template-columns:1fr}#page-hero #portrait{float:none;width:100%}.place{gap:12px}.building{font-size:52px}.village-banner{padding:22px}header a{letter-spacing:2px}.equipped-row{align-items:flex-start}.equipped-row strong{font-size:13px}}
/* Character screen 0.3 */
#page-hero{padding:28px}.profile-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.profile-heading h2{margin:6px 0 14px}.profile-tag{border:1px solid #4f5b43;padding:5px 10px;border-radius:20px;color:#b9c3a9;font-size:11px}.paperdoll{display:grid;grid-template-columns:minmax(105px,150px) minmax(150px,1fr) minmax(105px,150px);gap:20px;margin:22px 0;align-items:center}.slot-column{display:grid;gap:20px}.gear-slot{width:100%;min-height:145px;background:#14201a;border:1px dashed #506148;color:#87967c;display:flex;align-items:center;flex-direction:column;gap:8px;padding:12px 8px}.gear-slot.filled{border-style:solid;color:#d4c18d;background:linear-gradient(145deg,#2b3427,#18251d)}.gear-slot.selected{outline:2px solid #bdd484;outline-offset:3px}.slot-type{font-size:10px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:#a9b69b}.slot-icon svg{width:52px;height:52px}.slot-item{font-size:12px;line-height:1.3;min-height:30px;display:flex;align-items:center}.hero-stage{position:relative;min-height:330px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 45%,#47533a 0%,#23372a 42%,transparent 72%);border-top:1px solid #4b5941;border-bottom:1px solid #4b5941;border-radius:48% 48% 8px 8px}.stage-caption{font-size:11px;letter-spacing:4px;color:#c5d797;margin:20px 0 0}#page-hero .hero-stage #portrait{float:none;width:100%;margin:0;z-index:1}#page-hero .hero-stage #portrait svg{width:100%;height:235px}.stage-base{width:70%;height:16px;margin-top:-15px;background:#475337;border:1px solid #7b8457;border-radius:50%}.hero-stage strong{font:22px Georgia,serif;margin-top:16px;max-width:100%;overflow-wrap:anywhere}.stage-note{font-size:10px;color:#a6b294;margin:7px 8px 18px}.slot-detail{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#152119;border:1px solid #3e503a;border-radius:6px;padding:17px;min-height:86px}.slot-detail strong{font-size:14px}.slot-detail small{display:block;margin-top:5px}.slot-detail button{flex-shrink:0}.profile-section{border-top:1px solid #354439;margin-top:28px;padding-top:25px}.combat-values,.record-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric{padding:16px 8px;background:#17221c;border:1px solid #33432f;border-radius:6px;text-align:center}.metric strong{display:block;font:28px Georgia,serif;color:#dce5bf}.metric span{display:block;font-size:11px;color:#a8b59e;margin-top:6px}#page-hero #stats{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:4px 25px}#page-hero .stat{gap:8px;padding:13px 0}#page-hero .stat button{font-size:12px}#page-hero .stat span{font-size:14px}.record-grid .metric{background:transparent;border:0}.record-grid .metric strong{font-size:24px}.bag-tabs{display:flex;flex-wrap:wrap;gap:8px}.bag-tabs button{font-size:12px;padding:9px 13px}.bag-item-icon{color:#d0c18d;width:46px;height:46px}.bag-item-icon svg{width:100%;height:100%}.item-card.worn{border-color:#8b9f62}.profile-section .eyebrow{margin-top:0}@media(max-width:750px){#page-hero{padding:16px}.paperdoll{grid-template-columns:82px minmax(85px,1fr) 82px;gap:9px}.gear-slot{min-height:123px;padding:9px 5px}.slot-column{gap:15px}.slot-item{font-size:10px}.slot-type{font-size:9px;letter-spacing:.5px}.slot-icon svg{width:40px;height:40px}.hero-stage{min-height:285px}#page-hero .hero-stage #portrait svg{height:180px}.hero-stage strong{font-size:17px}.stage-note{display:none}.stage-caption{font-size:9px;letter-spacing:2px}.profile-tag{display:none}.combat-values,.record-grid{gap:6px}.metric{padding:12px 3px}.metric strong{font-size:24px}.metric span{font-size:10px}#page-hero #stats{grid-template-columns:1fr}.profile-heading{flex-wrap:wrap}.slot-detail{padding:13px;align-items:flex-start}.slot-detail button{padding:10px}.slot-detail strong{font-size:12px}.profile-section{margin-top:20px;padding-top:20px}}@media(max-width:370px){.paperdoll{grid-template-columns:70px minmax(70px,1fr) 70px;gap:6px}.combat-values,.record-grid{grid-template-columns:1fr 1fr}}

/* Character screen 0.4 */
main{max-width:1440px}
#page-hero{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:26px;align-items:start}
.character-main{min-width:0}
.backpack.profile-section{margin:0;padding:0 0 0 24px;border-top:0;border-left:1px solid #354439;min-width:0}
.backpack .item-grid{grid-template-columns:1fr;max-height:850px;overflow:auto;padding:4px}
.backpack .profile-heading{flex-wrap:wrap}
.level-panel{padding:14px 18px;background:#14201a;border:1px solid #46563d;border-radius:8px}
.level-panel>div{display:flex;justify-content:space-between;gap:12px}.level-panel progress{width:100%;height:12px}.level-panel small{display:block;font-size:11px}
#xp-label{font-size:12px;color:#c5d797}
.has-tip{position:relative;cursor:help}.metric.has-tip{outline-offset:3px}
.has-tip .stat-tooltip{display:none;position:absolute;bottom:calc(100% + 10px);left:0;width:270px;max-width:75vw;white-space:pre-line;padding:12px;background:#101a14;border:1px solid #a7b879;border-radius:6px;box-shadow:0 6px 24px #0008;color:#e9ecdf;font:12px/1.6 system-ui;text-align:left;z-index:20;margin:0;pointer-events:none}
.has-tip:hover .stat-tooltip,.has-tip:focus .stat-tooltip{display:block}
.combat-values .metric:nth-child(n+3) .stat-tooltip{left:auto;right:0}
@media(max-width:1150px){#page-hero{grid-template-columns:1fr}.backpack.profile-section{padding:24px 0 0;border-left:0;border-top:1px solid #354439}.backpack .item-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}}
@media(max-width:600px){.backpack .item-grid{grid-template-columns:1fr}.level-panel>div{flex-wrap:wrap}}
/* 0.5: compact inventory and unified icons */
.ui-icon{width:20px;height:20px;flex:none;vertical-align:middle}.icon-value{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.icon-gold{color:#e6bf68}.icon-diamond{color:#80d9ef}.icon-xp{color:#cfb0ef}.icon-hp{color:#e49b92}.icon-attack{color:#e3c78a}.icon-armor{color:#b0c8ce}.icon-agility{color:#bad88c}
.wallets{display:flex;align-items:center;gap:24px}.wallet{display:flex;gap:9px;align-items:center;font-size:28px}.wallet .ui-icon{width:27px;height:27px}.diamond-wallet{color:#80d9ef}.wallet-icon{display:flex}
#page-hero{grid-template-columns:minmax(0,1fr) 282px}.backpack.profile-section{padding-left:20px}.backpack .profile-heading{gap:8px}.backpack #profile-shop{font-size:12px;padding:7px 10px}.bag-tabs{gap:6px}.bag-tabs button{padding:9px 10px}.bag-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:20px 0;align-content:start}.bag-tile{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1;padding:10px;background:#14201a;border:1px solid #4b5843;color:#d4c18d;border-radius:7px;min-width:0;width:100%}.bag-tile>svg{width:40px;height:40px;max-width:100%}.bag-tile.worn{border-color:#b4c681;background:#2a3625;box-shadow:inset 0 0 0 1px #7b8c55}.worn-mark{position:absolute;right:5px;bottom:2px;color:#c7dc8a;font-size:12px}.bag-empty{grid-column:1/-1;padding:12px 0}.bag-help{font-size:11px}
.gear-slot{position:relative;cursor:default;padding-bottom:32px}.gear-slot .unequip{position:absolute;left:8px;right:8px;bottom:7px;font-size:11px;padding:5px 8px;opacity:0;pointer-events:none;transition:opacity .12s}.gear-slot:hover .unequip,.gear-slot:focus .unequip,.gear-slot:focus-within .unequip{opacity:1;pointer-events:auto}.gear-slot:focus-visible{outline:2px solid #d5c18d;outline-offset:3px}
.level-panel{max-width:380px;margin:0 auto 26px;padding:12px 18px}.level-panel>div{align-items:center}.level-panel .icon-value{color:#cfb0ef}.paperdoll{margin-bottom:18px}.hero-stage strong{margin-bottom:20px}
.combat-metric .icon-value{display:flex;flex-direction:column;gap:9px}.combat-metric .icon-value>span{font:28px Georgia,serif;color:#dce5bf;margin:0}.combat-metric .ui-icon{width:23px;height:23px}#page-hero .stat .stat-value{display:inline-flex;cursor:help}#page-hero .stat .stat-value .icon-value>span{font-size:19px}.stat button .ui-icon{width:16px;height:16px}.stat button{display:flex;gap:5px;align-items:center}.stat-value:focus-visible,.combat-metric:focus-visible{outline:2px solid #d5c18d;outline-offset:3px}
.item-stats{display:flex;gap:12px;flex-wrap:wrap;font-size:14px}.shop-item-icon{width:48px;height:48px;color:#d4c18d}.shop-item-icon svg{width:100%;height:100%}.shop-card .item-stats{margin:8px 0 12px}.shop-card button .icon-value{vertical-align:middle}.game-tooltip{position:fixed;z-index:1000;width:260px;max-width:calc(100vw - 16px);background:#101b15;border:1px solid #85955d;border-radius:8px;box-shadow:0 8px 30px #0008;padding:15px;color:#e3e8dc;font:13px/1.55 system-ui;pointer-events:none}.game-tooltip .item-stats{padding-bottom:12px;margin-bottom:10px;border-bottom:1px solid #344238}.price-row{display:flex;justify-content:space-between;gap:16px;margin-top:6px}.price-row>span:first-child{color:#aab69e}.tip-description{margin:0}.tip-gear{margin-top:12px;padding-top:10px;border-top:1px solid #344238;color:#c5cdbb}.tip-gear>div+div{margin-top:6px}.tip-gear .icon-value{margin-left:4px;font-size:12px}.tip-gear .ui-icon{width:16px;height:16px}
.enemy-rewards{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:8px 0}.enemy-stock{font-size:12px;color:#a4afa5}.enemy .item-stats{font-size:12px;color:#a4afa5}.enemy .item-stats .ui-icon{width:16px;height:16px}#outcome{display:flex;gap:12px;align-items:center;flex-wrap:wrap}#outcome .ui-icon{width:23px;height:23px}
@media(max-width:1150px){#page-hero{grid-template-columns:minmax(0,1fr) 250px;gap:18px}.paperdoll{grid-template-columns:86px minmax(110px,1fr) 86px;gap:10px}.gear-slot{min-height:140px}.slot-item{font-size:10px}.slot-type{letter-spacing:.5px}.backpack.profile-section{padding-top:0;border-top:0;border-left:1px solid #354439}.bag-tile{padding:8px}.slot-icon svg{width:40px;height:40px}}
@media(max-width:950px){#page-hero{grid-template-columns:1fr}.backpack.profile-section{border-left:0;border-top:1px solid #354439;padding:24px 0 0}.bag-grid{max-width:300px}.paperdoll{grid-template-columns:110px minmax(110px,1fr) 110px}}
@media(max-width:600px){.wallets{gap:14px}.wallet{font-size:20px;gap:5px}.wallet .ui-icon{width:20px;height:20px}.title{flex-wrap:wrap}.paperdoll{grid-template-columns:78px minmax(85px,1fr) 78px;gap:8px}.gear-slot{padding:9px 4px 32px}.slot-item{font-size:10px}.slot-type{font-size:8px}.hero-stage{min-height:270px}.level-panel{padding:12px;max-width:100%}.level-panel>div{flex-wrap:nowrap;font-size:13px}.enemy-rewards{gap:9px}.enemy{gap:8px}.enemy button{padding:10px}.bag-grid{max-width:280px}.bag-tile{max-height:86px}.bag-tile>svg{width:38px;height:38px}}
@media(hover:none){.gear-slot .unequip{opacity:1;pointer-events:auto}}
/* 0.6: raids, opponent scouting and patrol */
.raids-panel .page-heading{margin:4px 0 20px}.raid-banner{display:flex;justify-content:space-between;align-items:center;gap:22px;background:radial-gradient(ellipse at 90% 100%,#526241 0,transparent 55%),linear-gradient(120deg,#2c4433,#172b22);border:1px solid #526044;border-radius:8px;padding:24px 30px;margin-bottom:24px;overflow:hidden}.raid-banner h2{font:32px/1.15 Georgia,serif;margin:12px 0}.raid-banner p{color:#b8c7ad;font-size:13px}.banner-emblem{color:#c6d399;transform:rotate(-12deg);opacity:.75}.banner-emblem .ui-icon{width:120px;height:120px;stroke-width:.8}.raid-options{display:grid;grid-template-columns:1fr 1fr;gap:20px}.raid-option{background:#152119;border:1px solid #3d5038;border-radius:8px;padding:24px}.option-title{display:flex;gap:12px;align-items:center;border-bottom:1px solid #344735;padding-bottom:16px;margin-bottom:18px}.option-title h3{margin:0;font:24px Georgia,serif}.option-title .ui-icon{width:28px;height:28px}.raid-option>p.muted{min-height:60px;margin-bottom:20px}.search-level{padding:12px 16px;border:1px solid #4a5942;border-radius:5px;background:#1e2e22;font-size:14px;color:#d2dfb8}.raid-prize{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 0;margin:6px 0;color:#bac6ad}.raid-prize>span{font-size:12px}.raid-prize>div{display:flex;gap:20px;flex-wrap:wrap;font-size:18px;color:#e6eadc}.wide-button{width:100%;min-height:44px}.option-note{display:block;margin-top:12px;font-size:11px;color:#9fab96;line-height:1.6}.raid-option p.diamond-rule{font-size:11px;min-height:0;margin:18px 0 0;color:#93a98f}.patrol-option label{display:block;font-size:12px;margin-bottom:7px;color:#b3c1a6}#patrol-duration{width:100%;font:14px system-ui;color:#e9ecdf;background:#1e2e22;border:1px solid #4a5942;border-radius:5px;padding:11px 14px;min-height:47px}#patrol-duration:focus-visible{outline:2px solid #d5c18d;outline-offset:3px}.patrol-message{display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:#d3e3a6;font-size:13px;margin-bottom:0}.patrol-message:empty{display:none}#patrol-clock{display:block;font:38px Georgia,serif;color:#d3dfb7;margin:12px 0}#patrol-progress{width:100%;height:12px}.raid-notice{background:#2c3020;border:1px solid #66613c;color:#ddce8e;border-radius:5px;padding:12px;font-size:12px;margin:14px 0 0}.opponent-top{display:grid;grid-template-columns:240px minmax(0,1fr);gap:30px;margin:18px 0 24px}.opponent-portrait{border:2px solid #ac985f;box-shadow:inset 0 0 0 4px #263523;background:radial-gradient(ellipse at center,#46563b,#17281f);border-radius:8px;padding:16px 12px 10px;align-self:start}#opponent-art svg{width:100%;height:235px}.opponent-portrait-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:12px;color:#d6dcbf}#opponent-health .ui-icon{width:15px;height:15px}#opponent-hp{width:100%;height:8px;margin:9px 0 0}.opponent-intro{display:flex;flex-direction:column;justify-content:center;min-width:0}.opponent-badge{font-size:10px;letter-spacing:2px;color:#b7cc92}#opponent-name{font:34px/1.15 Georgia,serif;margin:12px 0 22px;overflow-wrap:anywhere}.opponent-quote{position:relative;background:#263425;border:1px solid #566247;border-radius:10px;padding:22px;color:#d6deca;font:18px/1.5 Georgia,serif;margin:0}.opponent-quote:before{content:'';position:absolute;left:-9px;top:24px;width:15px;height:15px;background:#263425;border-left:1px solid #566247;border-bottom:1px solid #566247;transform:rotate(45deg)}.opponent-reward{display:flex;align-items:center;gap:16px;flex-wrap:wrap;color:#d6dfbe}.opponent-reward>span:first-child{font-size:12px;color:#aab79e}.opponent-actions{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:12px;padding:18px 0;border-top:1px solid #3b4b36;border-bottom:1px solid #3b4b36}.opponent-actions button{min-height:46px}.opponent-bottom{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:22px}.opponent-bottom h3{font-size:17px;margin:8px 0 12px}.compare-note{font-size:11px;margin-bottom:20px;max-width:360px}.opponent-stat{margin:16px 0;cursor:help}.comparison-values{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.stat-difference{font-size:12px}.stronger{color:#ecad96}.weaker{color:#c0db8c}.equal{color:#9cab97}.comparison-track{position:relative;height:9px;border:1px solid #566046;border-radius:3px;background:#101b14}.comparison-track>span{height:100%;display:block;background:linear-gradient(90deg,#687a42,#b7c780);border-radius:2px}.comparison-track i{position:absolute;top:-4px;bottom:-4px;width:2px;background:#e9dec0;transform:translateX(-1px)}.opponent-record>div{display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid #344735;font-size:13px}.opponent-record>div>span:first-child{color:#b2c0a5}.opponent-record strong{font-size:16px;font-weight:500}.battle-actions{display:flex;gap:14px;justify-content:space-between;margin-bottom:22px}button .icon-gold{color:#78591e}.wallet .icon-gold{color:#e6bf68}
@media(max-width:1050px){.raid-option{padding:18px}.raid-options{gap:14px}.opponent-top{grid-template-columns:200px minmax(0,1fr);gap:24px}#opponent-art svg{height:210px}.opponent-bottom{gap:22px}}
@media(max-width:750px){.raid-options{grid-template-columns:1fr}.raid-banner{padding:20px}.raid-banner h2{font-size:27px}.banner-emblem .ui-icon{width:80px;height:80px}.raid-option>p.muted{min-height:0}.opponent-top{grid-template-columns:125px minmax(0,1fr);gap:16px}#opponent-art svg{height:165px}.opponent-portrait{padding:8px}.opponent-portrait-meta{flex-wrap:wrap;font-size:10px}#opponent-name{font-size:25px;margin:10px 0 14px}.opponent-quote{padding:14px;font-size:15px}.opponent-intro>p.muted{font-size:11px}.opponent-bottom{grid-template-columns:1fr;gap:14px}.opponent-actions{gap:7px;grid-template-columns:1fr 1fr}.opponent-actions #another-opponent{grid-column:1/-1}.opponent-actions button{font-size:12px;padding:10px}.opponent-reward{gap:10px;font-size:13px}.opponent-reward>span:first-child{width:100%}.opponent-reward .ui-icon{width:18px;height:18px}.battle-actions{flex-wrap:wrap}}
@media(max-width:400px){.opponent-top{grid-template-columns:1fr}.opponent-portrait{width:190px;justify-self:center}#opponent-art svg{height:190px}.opponent-portrait-meta{justify-content:space-between}.opponent-intro{text-align:center}.opponent-quote:before{display:none}.opponent-reward{justify-content:center}.raid-banner{gap:8px}.banner-emblem .ui-icon{width:58px;height:58px}}
/* 0.7: flexible patrol and level-up */
#patrol-duration{width:100%;font:14px system-ui;color:#e9ecdf;background:#1e2e22;border:1px solid #4a5942;border-radius:5px;padding:11px 14px;min-height:47px;box-sizing:border-box}
.patrol-limit{margin:7px 0 0}.raid-main-action{margin-top:18px}.raid-options .raid-main-action{min-height:46px}#cancel-patrol{margin-top:10px}
.opponent-reward small{width:100%;color:#9fab96;font-size:11px}
.level-up-overlay{position:fixed;inset:0;z-index:1000;background:#07100bd9;display:grid;place-items:center;padding:20px}.level-up-card{width:min(460px,100%);text-align:center;background:radial-gradient(circle at 50% 20%,#526241,#172b22 58%);border:2px solid #b8a174;border-radius:12px;padding:42px 28px;box-shadow:0 24px 80px #000}.level-up-card .level-star{font-size:54px;line-height:1}.level-up-card h2{font:34px Georgia,serif;margin:14px 0 8px}.level-up-card strong{display:block;font:64px Georgia,serif;color:#e7d39b;margin:10px 0 22px}.level-up-card p{color:#bac6ad}.level-up-card button{min-width:180px;margin-top:12px}

/* 0.8: dungeon */
.dungeon-banner{min-height:190px;background:radial-gradient(circle at 75% 30%,#334b54 0,transparent 25%),linear-gradient(120deg,#202c2a,#111a19);border:1px solid #46554b;border-radius:8px;padding:28px;margin:20px 0}.dungeon-banner h2{font:32px Georgia,serif;margin:10px 0}.dungeon-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dungeon-card{background:#152119;border:1px solid #3d5038;border-radius:8px;padding:22px}.dungeon-card h3{font:24px Georgia,serif;margin:0 0 12px}.dungeon-result{padding:16px;margin:16px 0;background:#1e2e22;border:1px solid #4a5942;border-radius:6px;min-height:56px}.dungeon-actions{display:flex;gap:10px;flex-wrap:wrap}.dungeon-actions button{flex:1}.dungeon-die{font:52px Georgia,serif;text-align:center;padding:12px}.manager-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.manager-row select{width:100%;font:14px system-ui;color:#e9ecdf;background:#1e2e22;border:1px solid #4a5942;border-radius:5px;padding:11px}.dungeon-clock{font:34px Georgia,serif;color:#d3dfb7;display:block;margin:12px 0}@media(max-width:750px){.dungeon-grid{grid-template-columns:1fr}}

/* 0.9: mine tickets, dice and character timers */
.manager-preview-line{display:flex;align-items:center;gap:7px;margin:4px 0}.ticket-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.ticket-count{display:flex;align-items:center;gap:7px;font-size:22px}.ticket-icon{font-size:24px}.dice-card{grid-column:1/-1}.dice-preview{text-align:center;font-size:34px;letter-spacing:7px;padding:18px;color:#d9c98f}.ticket-win{white-space:nowrap;color:#e5cf83}.dice-modal{position:fixed;inset:0;z-index:1200;background:#07100bdd;display:grid;place-items:center;padding:20px}.dice-modal[hidden]{display:none}.dice-modal-card{width:min(420px,100%);text-align:center;background:radial-gradient(circle at 50% 15%,#526241,#172b22 62%);border:2px solid #b8a174;border-radius:12px;padding:36px 28px;box-shadow:0 24px 80px #000}.dice-face{font-size:92px;line-height:1;color:#e6d7a4;margin:12px}.dice-modal-card h2{font:32px Georgia,serif;margin:12px}.dice-modal-card #dice-reward{font-size:22px;margin:18px}.profile-timers{margin-top:28px;padding-top:22px;border-top:1px solid #354439}.timer-row{padding:12px 0;border-bottom:1px solid #2f3e32}.timer-row span{display:block;font-size:12px;color:#aebaa4;margin-bottom:5px}.timer-row strong{font:20px Georgia,serif;color:#d9dfbf}.backpack .profile-timers .eyebrow{margin-bottom:4px}

.icon-ticket{width:24px;height:24px;color:#e5cf83}.ticket-count .icon-value{font-size:20px}.manager-row{align-items:start}.manager-row #manager-preview{min-height:54px}
/* 0.11: mine and dice */
.dice-face svg{display:block;width:120px;height:120px;margin:auto;filter:drop-shadow(0 10px 10px #0006)}.dice-modal-card{position:relative;background:radial-gradient(ellipse at 50% 25%,#45664c,#172b22 70%);padding:38px 28px;border-color:#c5ae73}.dice-modal-card:before{content:'';display:block;width:44px;height:2px;background:#c5ae73;margin:0 auto 20px}.dice-modal-card .eyebrow{color:#d6c28b}.dice-modal-card #dice-close{min-width:180px;margin-top:12px}.dice-face{padding:18px}.dice-face.rolling{animation:dice-shake .24s infinite alternate}.ticket-count{padding:8px 14px;background:#243628;border:1px solid #7c8b5c;border-radius:6px}.item-level{color:#d0c38c;font-size:12px;padding:5px 0}.record-grid{grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.manager-preview-line{font-size:14px}.dungeon-clock{font-variant-numeric:tabular-nums}@keyframes dice-shake{from{transform:rotate(-12deg) translateY(2px)}to{transform:rotate(12deg) translateY(-7px)}}@media(prefers-reduced-motion:reduce){.dice-face.rolling{animation:none}}
.journal-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.journal-tabs button{font-size:12px;padding:10px 13px}.journal-tools{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;color:#bbc7ac;font-size:13px}.mail-row{border:1px solid #3a4b35;border-radius:7px;margin:10px 0;background:#17241c}.mail-row.unread{border-left:4px solid #d3bd73;background:#253427}.mail-row summary{cursor:pointer;padding:18px}.mail-row summary strong{font-size:15px}.mail-row summary span{display:block;font-size:11px;color:#b1bca4;margin-top:7px}.mail-row p{padding:0 20px 18px;white-space:pre-line;color:#d6dec9;line-height:1.7}.journal-empty{padding:45px 20px;text-align:center;border:1px dashed #4e6245;border-radius:8px;color:#aebb9f}.bag-grid.food-grid{display:flex;flex-direction:column;gap:14px}.food-card{display:flex;flex-direction:column;gap:12px;padding:16px;background:#253526;border:1px solid #60724f;border-radius:8px}.food-feedback{color:#d8ca91;font-size:13px}.backpack .bag-tabs{flex-wrap:wrap}.backpack .bag-tabs button{font-size:11px}@media(max-width:600px){.journal-tools{align-items:flex-start;flex-direction:column}}
.forge-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:25px;margin-top:28px}.forge-choice{display:block;width:100%;text-align:left;margin:8px 0;background:#27392c;color:#d3dec6;border:1px solid #465b3d}.forge-choice.active{background:#bed18a;color:#18251a}.forge-state{border:1px solid #41553b;padding:18px;border-radius:7px;margin:15px 0;background:#17271d}.forge-state.next{border-color:#aabf73}.forge-state p,.ring-effect{font-size:13px;color:#c1d0ad;line-height:1.65}.forge-state small{display:block;margin-bottom:12px}#forge-message{color:#d2df9e}.places{display:grid;gap:15px}#active-ring{border:1px solid #4d6042;border-radius:6px;padding:12px}@media(max-width:650px){.forge-layout{grid-template-columns:1fr}.forge-choice{padding:10px}}
/* v14: shop categories, forging and fame */
#ring-tabs{margin:12px 0 20px;display:flex;gap:8px;flex-wrap:wrap}#raid-mode{width:100%;margin:10px 0 16px}.icon-fame{color:#e5bd63}.profile-ranking{border-top:1px solid var(--line,#415144);margin-top:22px;padding-top:18px}.ranking-row{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #ffffff0d}.ranking-row.current{color:#edca7a;font-weight:700}.forge-item-row{display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:20px;padding:22px;margin:16px 0;border:1px solid #52604b;border-radius:12px;background:#1b2b23}.forge-item-icon{width:76px;height:76px;background:#122219;border:1px solid #7b7552;border-radius:10px;padding:8px}.forge-item-icon svg{width:100%;height:100%}.forge-item-row h3{margin:0 0 12px}.forge-item-row h3 small{color:#a6b3a5;font-weight:400}.forge-item-row p{margin:10px 0}#forge-detail{max-width:760px}#forge-count{display:block;min-width:220px;margin:12px 0}.forge-state{margin:18px 0;padding:18px}.forge-state .forge-item-icon{float:right}#forge-detail .next{border:1px solid #8b814e}#forge-detail .forge-state:after{content:'';display:block;clear:both}@media(max-width:650px){.forge-item-row{grid-template-columns:62px minmax(0,1fr);gap:12px;padding:14px}.forge-item-row>button{grid-column:1/-1}.forge-item-icon{width:58px;height:58px}}
/* v15: consistent statistic tiles and compact rankings */
#profile-record,#opponent-record{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}#profile-record .metric,#opponent-record .metric{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:10px;min-width:0;min-height:102px;margin:0;padding:16px;border:1px solid #435344;border-radius:10px;background:#17281f}#profile-record .metric strong,#opponent-record .metric strong{display:block;font-size:24px;line-height:1.1}#profile-record .metric>span,#opponent-record .metric>span{font-size:12px;line-height:1.4;color:#b4c0b2}#profile-record .icon-value,#opponent-record .icon-value{display:inline-flex;align-items:center;gap:10px}#profile-record .ui-icon,#opponent-record .ui-icon{width:26px;height:26px;flex-shrink:0}.icon-wins{color:#9dcc80}.icon-losses{color:#d79786}.icon-power{color:#c3a4ed}.icon-battles{color:#c4cbbd}.profile-ranking h4{margin:16px 0 4px;color:#e3c88f}.ranking-row>span:first-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ranking-row>span:last-child{flex-shrink:0}.ranking-gap{padding:5px 0;color:#adbaab}.clan-ranking-title{border-top:1px solid #415144;padding-top:16px}#clan-ranking p{font-size:12px;margin:8px 0}.raid-difficulty{border:0;padding:0;margin:12px 0 16px;min-width:0}.raid-difficulty legend{margin-bottom:10px}.difficulty-option{display:flex;align-items:center;gap:10px;padding:12px;margin:7px 0;border:1px solid #445747;border-radius:8px;background:#14271d;cursor:pointer}.difficulty-option:has(input:checked){border-color:#d0b76c;background:#344430}.difficulty-option:has(input:disabled){opacity:.5;cursor:not-allowed}.difficulty-option input{width:16px;min-width:16px;margin:0;accent-color:#c9b66e}.difficulty-rewards{display:flex;gap:14px;margin-left:auto}.difficulty-option:focus-within{outline:2px solid #d0b76c;outline-offset:2px}@media(max-width:600px){#profile-record,#opponent-record{grid-template-columns:repeat(2,minmax(0,1fr))}#profile-record .metric,#opponent-record .metric{padding:12px;min-height:94px}}
.activity-budget{padding:12px;border:1px solid #5b6749;border-radius:8px;color:#e0d0a0;font-size:13px}#patrol-route{width:100%;margin:10px 0}#patrol-route-info{font-size:13px;line-height:1.5}.battle-gear-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.battle-gear-tile{padding:14px;border:1px solid #53614c;border-radius:9px;text-align:center;background:#17271e;min-width:0}.battle-gear-tile>div{width:60px;height:60px;margin:10px auto;color:#cfbd80}.battle-gear-tile svg{width:100%;height:100%}.battle-gear-tile strong{display:block;font-size:13px;line-height:1.4}.battle-gear-tile small{font-size:11px;color:#acb9a6}.battle-report-amounts{display:flex;gap:18px;flex-wrap:wrap;margin:12px 0;font-size:18px}#battle-test{padding:16px;margin:16px 0;border:1px dashed #667152;border-radius:10px}#battle-test p{font-size:12px;line-height:1.5}@media(max-width:600px){.battle-gear-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
