@import url('https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700&family=Noto+Serif:wght@400;600;700&display=swap');
:root{--ink:#303d36;--muted:#7b8274;--gold:#ad8137;--line:#ddcfaf;--paper:#f7f2e6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:14px 'Be Vietnam Pro',sans-serif}header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5%,calc((100% - 1160px)/2));gap:30px;background:#f6ecd5ef;border-bottom:1px solid var(--line)}a{color:inherit;text-decoration:none}.brand{font-size:15px;letter-spacing:3px;white-space:nowrap}.brand span{display:inline-block;color:#ae4b32;font:29px serif;border:1px solid;border-radius:7px;padding:3px 8px;margin-right:12px;transform:rotate(-6deg)}nav{display:flex;gap:25px;align-items:center}nav a{padding:15px 8px;color:#777c6b}nav .active{color:#946c27;border-bottom:2px solid #ad8137}.profile{font-size:11px;color:var(--muted)}.profile b{display:block;color:var(--ink);margin-top:5px;font-size:13px}.landscape{position:absolute;top:82px;height:470px;width:100%;overflow:hidden;z-index:-1;background:linear-gradient(#cfddd1,#e7e6cd 85%,var(--paper))}.sun{position:absolute;top:35px;left:69%;height:155px;width:155px;border-radius:50%;background:#e0c97577;box-shadow:0 0 60px #e0c97566}.mountain{position:absolute;width:115%;height:100%;clip-path:polygon(0 60%,8% 35%,16% 54%,25% 14%,34% 45%,43% 22%,52% 56%,65% 12%,75% 40%,85% 22%,100% 60%,100% 100%,0 100%)}.far{background:#829c9380;top:55px;left:-8%;filter:blur(2px)}.near{background:#6e887c66;top:200px;left:0;transform:scaleX(-1)}main{max-width:1160px;margin:45px auto 0;padding:0 20px}.eyebrow{font-size:10px;letter-spacing:2px;color:#7c816c}main>.eyebrow{margin-bottom:20px}.panel{border:1px solid var(--line);border-radius:18px;background:#fffdf5bd;box-shadow:0 16px 35px #4e493d0b}.hero{display:grid;grid-template-columns:1fr 310px;padding:32px;gap:35px;background:linear-gradient(115deg,#fffdf5ba,#f6f0decc)}.intro{display:flex;align-items:center;gap:22px}.seal{border:3px double #b9954e;outline:1px solid #cfb77d;outline-offset:5px;border-radius:50%;width:85px;height:85px;display:grid;place-items:center;font:48px serif;color:#7f6338;background:linear-gradient(150deg,#faf3df,#d3d6bc)}h1,h2,h3{font-family:'Noto Serif',Georgia,serif}h1{font-size:36px;margin:7px 0 13px;color:#735622;line-height:1.4}.tag{font-size:10px;background:#e4e8da;border:1px solid #cbd1bc;border-radius:20px;padding:5px 10px}.description{font-size:12px;line-height:1.9;color:#747e70;margin:30px 0}.stages{display:flex;justify-content:space-between;color:#8d835e;font-size:11px;border-top:2px solid #ceb578;margin:30px 8px 25px;padding-top:12px}.stages span{position:relative}.stages span:before{content:'';position:absolute;width:9px;height:9px;background:#bb9655;border-radius:50%;top:-18px;left:calc(50% - 4px)}.meter-label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:10px}progress{display:block;width:100%;height:10px;border:0;border-radius:10px;overflow:hidden;background:#e4dece}progress::-webkit-progress-bar{background:#e4dece}progress::-webkit-progress-value{background:linear-gradient(90deg,#997331,#d9bc7d);border-radius:10px}progress::-moz-progress-bar{background:#b38b44}.goal{border:1px solid var(--line);border-radius:12px;padding:18px;margin-top:22px;background:#f7f1e390}.goal h3{font-size:17px;margin:10px 0}.goal p{font-size:11px;color:var(--muted);margin:0}.stats{display:flex;justify-content:space-between;margin-top:25px;gap:10px}.stats span{font-size:10px;display:block;color:var(--muted);margin-bottom:7px}.stats b{font-size:13px;font-weight:500}aside{padding:22px;border:1px solid var(--line);border-radius:14px;text-align:center;background:#eee8d24d;display:flex;flex-direction:column;align-items:center}.orb{width:175px;height:175px;border:5px double #ac843e;border-radius:50%;margin:26px 0 10px;display:flex;flex-direction:column;justify-content:center;background:radial-gradient(circle,#f8f3d5,#b5c4a263);box-shadow:0 0 0 8px #b6975120}.orb span{font:70px serif;color:#6b7d62}.orb b{font-size:10px;font-weight:400;color:#847849}.orb.training{animation:breathe 3s infinite}@keyframes breathe{50%{box-shadow:0 0 0 15px #b6975110,0 0 40px #b6975140}}aside p{font-size:11px;line-height:1.8;color:var(--muted);min-height:36px}button{border:1px solid #98702c;border-radius:9px;padding:13px 18px;font:600 12px 'Be Vietnam Pro',sans-serif;cursor:pointer;color:#fffaf0;background:linear-gradient(#bd984e,#977020);box-shadow:0 4px 8px #8263241a;transition:filter .2s}button:hover:not(:disabled){filter:brightness(1.08)}button:focus-visible,a:focus-visible{outline:3px solid #547e68;outline-offset:3px}button:disabled{opacity:.45;cursor:not-allowed}aside button{width:100%;margin-top:10px}.secondary{background:#fffaf066;color:#796233;border-color:#cdbb92;box-shadow:none}aside small{font-size:9px;line-height:1.8;color:#8c8b7d;margin-top:18px}.bottom{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:25px}.bottom article{padding:25px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-title h2{font-size:18px;margin:0}.section-title>span{font-size:8px;letter-spacing:1px;color:#9b967f}.daily p{font-size:12px;line-height:1.9;color:var(--muted)}.reward{display:flex;align-items:center;justify-content:space-between;margin-top:24px;color:#a3823b}.reward b{font-size:12px}ul{padding-left:18px;margin-bottom:0;font-size:11px;color:var(--muted);line-height:2.1}footer{text-align:center;padding:30px 0;font-size:9px;letter-spacing:1px;color:#969381}footer span{margin:0 10px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:#344b3e;color:#fff8e9;padding:14px 24px;border-radius:10px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;max-width:90%;text-align:center}#toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:800px){header{padding:0 20px;height:70px}nav{gap:8px;font-size:11px}.profile{display:none}.brand{font-size:0}.brand span{font-size:25px;margin:0}.hero{grid-template-columns:1fr;padding:24px;gap:25px}main{margin-top:30px}.intro{gap:18px}h1{font-size:28px}.seal{width:65px;height:65px;flex-shrink:0;font-size:37px}.intro .eyebrow{font-size:8px;letter-spacing:1px}aside{padding:20px}.orb{margin-top:18px}.bottom{grid-template-columns:1fr}.section-title h2{font-size:16px}.stats b{font-size:11px}}
.equipment{margin-top:25px;padding:28px;scroll-margin-top:20px}.equipment-help,.equipment-note{font-size:12px;line-height:1.9;color:var(--muted)}.equipment-note{font-size:10px;margin:20px 0 0}.equipped-slot{display:flex;align-items:center;gap:18px;background:#e4e8da80;border:1px solid #cbd1bc;border-radius:10px;padding:16px;margin:20px 0;font-size:12px}.equipped-slot>span{color:var(--muted);font-size:10px}.equipped-slot a{margin-left:auto;color:#86682d;font-size:10px}.artifacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.artifact{padding:20px;background:#f7f1e366;border:1px solid var(--line);border-radius:12px}.artifact.equipped{border-color:#82976a;background:#e7ecd990}.artifact-top{display:flex;justify-content:space-between;align-items:center;gap:10px}.artifact-icon{font-size:35px;color:#9a7b3b}.artifact .eyebrow{font-size:8px;letter-spacing:1px}.artifact h3{font-size:18px;margin:14px 0 10px}.artifact p{color:var(--muted);font-size:11px;line-height:1.8;min-height:40px}.artifact strong{display:block;color:#668154;font-size:12px;margin:18px 0}.artifact button{width:100%;margin-top:8px}[hidden]{display:none!important}@media(max-width:800px){.artifacts{grid-template-columns:1fr}.artifact p{min-height:0}.equipment{padding:22px}.equipped-slot{flex-wrap:wrap;gap:10px}.equipment .section-title{flex-wrap:wrap}}
.tab-page{scroll-margin-top:24px}.home-guide{padding:25px;border-left:1px solid var(--line);align-self:center}.home-guide h2{font-size:27px;line-height:1.7;color:#735622}.home-guide p,.training-intro>p{font-size:12px;line-height:2;color:var(--muted)}.page-link{display:block;width:fit-content;padding:12px 18px;margin-top:14px;border:1px solid #b29458;border-radius:9px;color:#796233;font-size:12px}.home-daily{padding:25px;margin-top:25px}.training-page{display:grid;grid-template-columns:1fr 310px;gap:40px;padding:32px}.training-intro{padding:20px 5px}.training-intro h2{font-size:30px;color:#735622}.training-summary{display:grid;gap:22px;margin:30px 0}.training-summary span{font-size:11px;color:var(--muted)}.training-summary strong{display:block;font-size:17px;font-weight:500;color:var(--ink);margin-top:8px}.journey-page{padding:30px;min-height:330px}.journey-page ul{font-size:13px;line-height:2.5;margin:25px 0}.tab-page.equipment{margin-top:0}.wallet{font-size:12px;margin:20px 0;color:#796233}nav a{white-space:nowrap}main{min-height:calc(100vh - 157px)}@media(max-width:800px){header{gap:12px}nav{gap:0;font-size:10px;overflow-x:auto}nav a{padding:15px 7px}.training-page{grid-template-columns:1fr;gap:20px;padding:24px}.home-guide{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.home-guide h2{font-size:23px}.journey-page{padding:24px}.training-intro h2{font-size:25px}}
.quest-page{padding:30px}.quest-card{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:30px;align-items:center;padding:24px 0;border-top:1px solid var(--line)}.quest-card h3{font-size:18px;margin:0 0 10px}.quest-card p{font-size:12px;line-height:1.9;color:var(--muted);margin-bottom:20px}.quest-card .meter-label{font-size:10px;gap:10px}.quest-actions{display:grid;text-align:center;gap:15px}.quest-actions a{font-size:11px;color:#796233}nav{min-width:0}@media(max-width:800px){.quest-page{padding:22px}.quest-card{grid-template-columns:1fr;gap:20px}.quest-actions{grid-template-columns:1fr 1fr;align-items:center}header{padding:0 12px;gap:8px}.brand span{padding:3px 5px}nav a{font-size:10px;padding:15px 6px}}
.expedition-page{padding:30px}.journey-icon{display:grid;place-items:center;height:100px;border-radius:8px;background:linear-gradient(140deg,#d3deca,#ebe4c8);color:#6d805e;font:55px serif}.journey-card progress{margin-bottom:15px}.journey-card strong{font-size:11px}.journey-card p[id]{min-height:0;font-size:10px}@media(max-width:800px){header{height:auto;min-height:70px;flex-wrap:wrap;padding:12px}.brand{display:none}nav{width:100%;justify-content:flex-start;overflow-x:auto;gap:5px}nav a{padding:12px 8px}.expedition-page{padding:22px}}
header nav{gap:10px;overflow-x:auto}header{gap:20px}.profile{white-space:nowrap}@media(max-width:1100px){header{padding:12px 20px;flex-wrap:wrap;height:auto}.profile{display:none}header nav{gap:4px}header .brand{font-size:11px;letter-spacing:1px}}@media(max-width:800px){header nav{flex-wrap:wrap;overflow:visible;gap:0}header nav a{padding:10px 8px}}
.array-layout{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;padding:25px 0}.array-art{aspect-ratio:1;max-width:290px;width:100%;margin:auto;border:7px double #ac945b;outline:1px solid #c7bc92;outline-offset:12px;border-radius:50%;background:radial-gradient(circle,#f5f0da,#b6c7a488);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 0 40px #b6975125}.array-art span{font:110px serif;color:#6c805e}.array-art i{font:22px serif;letter-spacing:10px;color:#8c743c}.array-details h3{font-size:25px;margin:15px 0}.array-details button{margin-top:10px}header{padding:12px max(3%,calc((100% - 1280px)/2));height:auto;min-height:82px;flex-wrap:wrap}header nav{flex:1}nav a{padding:15px 6px;font-size:12px}@media(max-width:800px){.array-layout{grid-template-columns:1fr;gap:40px}.array-art{max-width:200px;margin:20px auto}.array-art span{font-size:75px}header{padding:10px 12px}nav a{font-size:10px}}
.world-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:20px;align-items:start}.map-scroll{overflow-x:auto;border:1px solid #b5a888;border-radius:10px;box-shadow:inset 0 0 20px #665b3b30,0 5px 12px #6b5a3a20}.world-map{position:relative;min-width:620px;isolation:isolate}.world-map>img{display:block;width:100%;height:auto}.map-marker{position:absolute;transform:translate(-50%,-50%);border:0;padding:0;background:none;box-shadow:none;color:#3f4231;display:flex;flex-direction:column;align-items:center;gap:3px;min-width:100px;max-width:145px;z-index:2}.map-marker .pin{width:30px;height:30px;border-radius:50%;border:3px double #967837;background:#fff5d8;display:grid;place-items:center;font:19px serif;box-shadow:0 2px 6px #3a483a35}.map-marker b{font:700 13px 'Noto Serif',Georgia,serif;background:#f7efd8dc;padding:3px 6px;border-radius:4px;white-space:nowrap;text-shadow:0 1px #fff}.map-marker small{font-size:8px;background:#eee6ceeb;border-radius:8px;padding:2px 7px;font-weight:400;color:#716c57}.map-marker.locked{color:#827d6a}.map-marker.locked .pin{background:#d9d3bf;border-color:#9d9986;color:#8b8671}.map-marker[aria-pressed=true] .pin{outline:3px solid #ad603a;outline-offset:4px}.map-marker[aria-pressed=true] b{color:#9c4b31}.map-marker.travelling .pin{background:#b16141;color:#fff6dc;border-color:#f5e4ad}.map-marker.travelling small{background:#a7563c;color:#fff8e9}.map-marker.ready .pin{background:#4c7e64;color:white}.map-marker.ready small{background:#4c7e64;color:white}.map-caption{position:absolute;bottom:13px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:3px;color:#756f52;white-space:nowrap}.map-caption span{margin:0 8px}.map-details{border:1px solid var(--line);border-radius:10px;background:#f8f2e6;padding:16px}.map-details .artifact{border:0;padding:0;background:none}.map-details .journey-icon{height:80px;margin-top:16px;font-size:40px}.map-details .artifact h3{font-size:20px}.map-details .artifact p{min-height:0}.map-details .eyebrow{font-size:9px}.map-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:18px;font-size:10px;color:#827756}.map-legend small{margin-left:auto;font-size:9px;color:var(--muted)}.expedition-page .equipped-slot{margin-top:15px}@media(max-width:1000px){.world-layout{grid-template-columns:1fr}.map-details .journey-icon{display:none}.map-details .artifact{display:grid;grid-template-columns:1fr 1fr;gap:5px 25px;align-items:center}.map-details .artifact p,.map-details .artifact strong{margin:8px 0}.map-details .artifact button{margin:5px 0}.map-details .artifact h3{margin-top:15px}.map-legend small{width:100%;margin-left:0}}@media(max-width:600px){.expedition-page{padding:16px}.expedition-page .section-title{align-items:flex-start;flex-direction:column}.map-details .artifact{display:block}.map-marker b{font-size:12px}.map-caption{font-size:8px}}
.mining-summary{display:flex;align-items:center;gap:15px;justify-content:space-between;margin:12px 0 20px;background:#e8dfc780;border-radius:9px;padding:12px 15px;font-size:11px;line-height:1.9;color:#7a6541}.mining-summary button{flex-shrink:0}.location-label{background:#dce7d280;border:1px solid #c5d1b6;border-radius:8px;padding:12px}.map-marker:has(.pin){min-width:85px}.map-marker b{font-size:11px}.map-marker small{font-size:8px}@media(max-width:600px){.mining-summary{flex-direction:column;align-items:stretch}}
.profession-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.profession-card p{min-height:0}.profession-card strong{line-height:1.9;min-height:45px}.profession-icon{display:grid;place-items:center;width:62px;height:62px;border-radius:12px;background:linear-gradient(135deg,#dce5d1,#e9dcba);border:1px solid #c6bd9b;color:#798258;font:35px serif}.profession-card progress{margin:15px 0}.profession-card button{font-size:11px}.profession-card h3{font-size:23px}@media(max-width:600px){.profession-grid{grid-template-columns:1fr}.profession-card strong{min-height:0}}
.scribe-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:30px;margin:25px 0}.scribe-form h3,.library-heading h3{font:600 22px 'Noto Serif',serif;margin-top:0}.scribe-form label,.library-tools label{display:grid;gap:8px;font-size:12px;margin-bottom:17px;color:#756744}.scribe-form label>span{line-height:1.8}input,select,textarea{width:100%;min-width:0;border:1px solid #cbbd99;background:#fffcf4;border-radius:8px;color:var(--ink);padding:11px 12px;font:12px 'Be Vietnam Pro',sans-serif}textarea{resize:vertical;line-height:1.8}input:focus,select:focus,textarea:focus{outline:2px solid #8b9d73;outline-offset:2px}.draft-preview{padding:28px;background:linear-gradient(120deg,#f2e8cf,#f9f3e5);border:1px solid #d0bb85;border-radius:12px;align-self:start;position:sticky;top:20px;overflow-wrap:anywhere}.draft-preview h3{font:600 27px 'Noto Serif',serif;color:#846635;line-height:1.6;margin:18px 0 8px}.draft-preview>p{color:#7d775e;font-size:12px}.draft-preview h4,.manuscript-card h4{font-size:11px;color:#997940;margin:22px 0 8px}.written-content{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:2;color:#636f60}.draft-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.library-heading{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:25px;gap:15px}.library-heading h3{margin:0}.library-tools{display:grid;grid-template-columns:180px 1fr;gap:20px;margin:20px 0}.manuscript-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.manuscript-card{border:1px solid var(--line);border-radius:12px;padding:23px;background:#faf5e8;overflow-wrap:anywhere}.manuscript-card h3{font-size:21px;margin:15px 0 8px}.manuscript-card>p{font-size:11px;color:var(--muted)}.manuscript-card summary{cursor:pointer;color:#8e713b;font-size:12px;padding:12px 0}.manuscript-card .draft-actions button{font-size:10px;padding:9px 15px}#library-message{font-size:12px;line-height:1.9;color:#59774b;min-height:22px}.profession-grid{margin-top:20px}@media(max-width:800px){.scribe-layout{grid-template-columns:1fr}.draft-preview{position:static}.manuscript-grid{grid-template-columns:1fr}.library-tools{grid-template-columns:1fr;gap:0}}
.material-bag{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}.material-slot{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px;border:1px solid var(--line);background:#f7f0df;border-radius:9px;font-size:12px}.material-slot small{display:block;margin-top:6px;color:var(--muted);font-size:9px}.material-slot b{font-size:20px;color:#8a703a}.recipe-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.recipe-card p{min-height:0}.recipe-card strong{min-height:45px;line-height:1.9}.recipe-card h3{min-height:48px;overflow-wrap:anywhere}.recipe-card button{font-size:10px}.craft-manuscripts{border:1px solid var(--line);border-radius:10px;padding:18px;margin:20px 0}.craft-manuscripts summary{cursor:pointer;color:#80662f;font-size:13px}.craft-drafts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:15px}.craft-drafts label{font-size:11px;display:grid;gap:8px}#active-formation{overflow-wrap:anywhere}@media(max-width:900px){.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.craft-drafts{grid-template-columns:1fr}}@media(max-width:600px){.recipe-grid,.material-bag{grid-template-columns:1fr}.recipe-card h3,.recipe-card strong{min-height:0}}
.item-traits{color:#936d31!important;border-left:2px solid #b99c54;padding-left:9px;font-size:11px!important;line-height:1.8}.item-lore{font-style:italic;color:#7a826c!important}.artifact>strong{line-height:1.9}.effect-panel{margin:20px 0;padding:20px;border:1px solid #bac9a6;border-radius:12px;background:#e9efdf80}.effect-panel h3{font-size:17px;margin:0 0 15px}.effect-panel p,.effect-notice{font-size:12px;line-height:2;color:#59744e}.effect-panel small{display:block;font-size:10px;line-height:1.9;color:#7b806d}.effect-notice{border-left:2px solid #9ead78;padding-left:12px}.recipe-card strong{min-height:80px}.recipe-card p{line-height:1.9}
.craft-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%}.craft-categories button{padding:19px 12px;font-size:14px}.craft-categories .selected{background:#dfebd2;border-color:#8d9b65;color:#486140;box-shadow:0 0 0 2px #c2cfaa55}#nghe-nghiep .library-tools{grid-template-columns:1fr}.craft-empty{text-align:center;border:1px dashed #c9bb95;border-radius:12px;padding:35px 20px;color:#908269;font-size:12px;line-height:2}.material-drawer{border:1px solid var(--line);padding:17px;border-radius:10px;margin-top:20px}.material-drawer>summary,.awakening-card summary{cursor:pointer;font-size:12px;color:#8c733c}.awakening-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:30px}.awakening-card{background:linear-gradient(145deg,#f4eddb,#e3e9d7);padding:28px;border:1px solid #c9bf99;border-radius:15px}.awakening-seal{display:grid;place-items:center;margin-bottom:22px;width:85px;height:85px;border:5px double #ad965d;outline:1px solid #c7ba93;outline-offset:4px;border-radius:50%;color:#7c8056;font:46px serif;background:#f4edd9}.awakening-card h3{font-size:25px;line-height:1.6;margin:15px 0}.awakening-card>p{font-size:12px;line-height:2}.awakening-card>strong{display:block;font-size:13px;color:#537245;line-height:2;min-height:60px;margin:20px 0}.awakening-card>button{width:100%}.awakening-card details{margin-top:22px}.awakening-card ul{font-size:10px}.innate-summary{display:block;margin-top:25px;border:1px solid #c9cfb4;padding:12px;border-radius:8px;background:#e7ecda90;color:#627551;font-size:11px;line-height:1.8}@media(max-width:700px){.awakening-grid{grid-template-columns:1fr}.craft-categories{gap:7px}.craft-categories button{padding:15px 5px;font-size:11px}.awakening-card{padding:22px}}
.profession-workshop{margin:25px 0 35px;padding:25px;border:1px solid var(--line);border-radius:13px;background:#ede8d780}.profession-workshop h3{font-size:19px;margin:0}.war-campaign{padding:20px;margin:18px 0;border:1px solid #bd9b7a;background:linear-gradient(130deg,#f3e4cf,#ede3cf);border-radius:12px}.war-campaign h3{margin:0;color:#955139;font-size:19px}.war-campaign p{font-size:12px;line-height:1.9}.war-campaign small{font-size:10px;line-height:1.9;display:block;color:#8a735b}.map-marker.enemy-held .pin{background:#a34d39;color:#fff2d4;border-color:#e2b88b}.map-marker.enemy-held b{color:#973c2e}.map-marker.enemy-held small{background:#ae5943;color:#fff6e9}.map-marker.liberated .pin{background:#4b7e5f;color:#fff8de;border-color:#a9c299}.map-marker.liberated small{background:#4b7e5f;color:#fff8de}.map-marker.liberated b{color:#3a684d}@media(max-width:600px){.profession-workshop{padding:16px}.war-campaign .section-title{align-items:flex-start}}
.map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;margin:20px 0 8px}.map-toolbar>div{display:flex;align-items:center;gap:8px}.map-toolbar button{padding:10px 15px}.map-toolbar output{min-width:48px;text-align:center;font-size:12px;color:#7e6b43}.map-toolbar>span{font-size:10px;color:var(--muted)}.map-instructions{font-size:10px;line-height:1.9;color:#8b8066}.scout-status{padding:12px 15px;border:1px solid #c6cbb4;border-radius:8px;background:#e5e9d980;font-size:11px;color:#637251;line-height:1.8}#map-viewport{position:relative;overflow:auto;height:610px;max-height:75vh;min-height:340px;cursor:grab;overscroll-behavior:contain;background:#c7d1c1;touch-action:pan-x pan-y;scrollbar-color:#a99b77 #ded8c5}#map-viewport.dragging{cursor:grabbing;user-select:none}#map-stage{position:relative;width:2400px;height:1200px}#world-canvas{position:absolute;top:0;left:0;width:2400px;height:1200px;min-width:0;transform-origin:0 0;--marker-scale:1}#world-canvas>img{width:2400px;height:1200px;pointer-events:none;user-select:none}#world-canvas .map-marker{transform:translate(-50%,-50%) scale(var(--marker-scale));max-width:155px}#world-canvas .map-marker b{font-size:12px}#map-fog{position:absolute;inset:0;pointer-events:none;z-index:8}.fog-cell{position:absolute;width:calc(100% / 8 + 1px);height:calc(100% / 4 + 1px);margin:0;border:0;border-radius:0;pointer-events:auto;background:radial-gradient(ellipse at 25% 25%,#f2f1e5 0 24%,transparent 65%),radial-gradient(ellipse at 75% 65%,#e9ede4 0 22%,transparent 65%),linear-gradient(130deg,#c1cbbf,#e2e6dc 50%,#c6d1c7);color:#829285;box-shadow:inset 0 0 65px #a8b7aa80;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;cursor:pointer;text-shadow:0 1px #f6f5e9;overflow:hidden}.fog-cell span{font-size:85px;opacity:.5;line-height:1}.fog-cell b{font-size:16px;letter-spacing:3px;font-weight:500;opacity:.7}.fog-cell small{font-size:13px;opacity:.65}.fog-cell:hover{filter:brightness(1.035)!important}.fog-cell.scouting{box-shadow:inset 0 0 0 4px #b09a5a,inset 0 0 80px #d5ceaa}.fog-details{padding:20px 0;font-size:12px;line-height:2;color:#7a826b}.fog-details h3{font-size:23px;color:#6e7e65}.fog-details button{width:100%;margin-top:15px}.fog-orb{font-size:70px;display:block;text-align:center;color:#a0b09b}.world-layout{grid-template-columns:minmax(0,1fr) 255px}#world-canvas .map-caption{z-index:1}@media(max-width:1000px){.world-layout{grid-template-columns:1fr}#map-viewport{height:560px}.fog-details{padding:0}.fog-orb{display:none}}@media(max-width:600px){#map-viewport{height:440px;min-height:320px}.map-toolbar button{padding:9px 12px}}
#map-clouds{position:absolute;inset:0;z-index:8;pointer-events:none;background-color:#d5ded4;background-image:radial-gradient(ellipse at 14% 17%,#f4f4e8 0%,#edf0e5 8%,transparent 27%),radial-gradient(ellipse at 55% 31%,#f1f3e9 0%,#e5ece1 15%,transparent 39%),radial-gradient(ellipse at 88% 12%,#f4f5ec 0%,transparent 35%),radial-gradient(ellipse at 25% 74%,#f0f2e6 0%,#e9eee1 13%,transparent 35%),radial-gradient(ellipse at 82% 81%,#f4f3e9 0%,#e6ece0 15%,transparent 42%),radial-gradient(ellipse at 65% 60%,#b4c4b9 0%,transparent 40%);mask-size:100% 100%;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;-webkit-mask-repeat:no-repeat}#map-fog{z-index:9}.fog-cell{background:transparent!important;box-shadow:none!important;border:0!important;text-shadow:none;gap:6px;transition:none}.fog-cell span,.fog-cell b,.fog-cell small{opacity:0;transition:opacity .2s}.fog-cell:hover,.fog-cell:focus-visible{filter:none!important;background:transparent!important;box-shadow:none!important}.fog-cell:hover span,.fog-cell:focus-visible span{opacity:.38}.fog-cell:hover b,.fog-cell:focus-visible b,.fog-cell:hover small,.fog-cell:focus-visible small{opacity:.6}.fog-cell:focus-visible{outline:0}.fog-cell:focus-visible b{outline:2px solid #839578;outline-offset:8px;border-radius:8px}.fog-cell.scouting span{opacity:.45;animation:cloud-breathe 3s ease-in-out infinite}.fog-cell.scouting small{opacity:.6}#world-canvas .map-marker{z-index:10}@keyframes cloud-breathe{50%{opacity:.2;transform:translateY(-5px)}}

#map-clouds::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221800%22%20height%3D%221200%22%3E%3Cfilter%20id%3D%22vapor%22%3E%3CfeTurbulence%20type%3D%22fractalNoise%22%20baseFrequency%3D%22.005%20.009%22%20numOctaves%3D%224%22%20seed%3D%2217%22%2F%3E%3CfeColorMatrix%20type%3D%22saturate%22%20values%3D%220%22%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url(%23vapor)%22%20opacity%3D%22.65%22%2F%3E%3C%2Fsvg%3E");background-size:100% 100%;mix-blend-mode:soft-light;opacity:.32}@media(prefers-reduced-motion:reduce){.fog-cell.scouting span{animation:none}}
#map-borders{position:absolute;inset:0;z-index:11;pointer-events:none}#map-borders svg{display:block;width:100%;height:100%}.invasion-panel{margin:20px 0;padding:22px;border:1px solid #ad826b;border-radius:13px;background:linear-gradient(135deg,#f1e1d0,#eee7d8)}.invasion-panel h3{font-size:20px;color:#914732;margin:0}.invasion-panel p{font-size:12px;line-height:2}.invasion-panel small{display:block;font-size:10px;line-height:1.9;color:#8a7761}.invasion-countdown{font-size:25px!important;color:#9c4d35!important;letter-spacing:2px;font-variant-numeric:tabular-nums}.defense-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:22px 0}.defense-grid span{display:block;font-size:10px;color:#8d7e68;margin-bottom:8px}.defense-grid strong{font-size:14px;font-weight:500;color:#656c4c}#invasion-report{background:#fffaf05c;border-left:3px solid #ab7652;padding:12px 15px}@media(max-width:600px){.invasion-panel{padding:16px}.invasion-panel h3{font-size:17px}.defense-grid{grid-template-columns:1fr}.invasion-panel .section-title{align-items:flex-start;flex-direction:column}}
.home-invasion{display:block;margin-top:22px;padding:16px 20px;border:1px solid #bc987d;border-radius:10px;background:#efe1cc;color:#94563e;font-size:12px;line-height:1.9}.home-invasion:hover{background:#e9d7bd}
.enemy-profile{padding:11px;border:1px solid #c4a18a;border-radius:8px;background:#eee1d1;color:#955a42!important;font-size:11px!important;line-height:1.9!important}
.camp-hall{margin:22px 0;border:1px solid #b8c4a7;border-radius:15px;background:linear-gradient(135deg,#edf0df,#faf4e5);padding:25px}.camp-hall .section-title h2{font-size:24px}.camp-hall label{display:grid;gap:8px;font-size:11px;color:#7d745b}.camp-entry{display:flex;gap:12px;align-items:end;margin:22px 0}.camp-entry label{flex:1;max-width:300px}.camp-columns{display:grid;grid-template-columns:1fr 1fr;gap:25px}.camp-columns>article{padding:20px;border:1px solid var(--line);border-radius:12px;background:#fffaf073}.camp-columns h3{font-size:18px;margin:0 0 17px}.camp-roster{padding:0;list-style:none;margin:0 0 20px;min-height:80px}.camp-roster li{padding:11px 0;border-bottom:1px solid #d9d2bb}.camp-roster strong{display:block;color:#526b4c;font-size:12px}.camp-roster span{display:block;font-size:10px;line-height:1.9}.camp-columns button{margin-top:12px}.camp-chat-log{height:235px;overflow:auto;border:1px solid #d2c8a8;border-radius:8px;padding:13px;background:#faf8ee}.camp-chat-log p{font-size:11px;line-height:1.9;overflow-wrap:anywhere;margin:0 0 12px}.camp-chat-log .camp-system{color:#9b8051;font-style:italic}.camp-chat-log b{color:#57754c}#camp-chat-form{display:flex;gap:8px;margin-top:12px}#camp-chat-form button{margin-top:0}.camp-campaign{border-top:1px solid var(--line);padding-top:22px;margin-top:25px}.camp-campaign>button{margin-top:15px}.camp-campaign small{display:block;color:#7d826d;font-size:10px;line-height:1.9}#camp-battle{font-size:12px;line-height:2;color:#7b6745}#camp-message{font-size:12px;color:#967149;line-height:1.9}#camp-forces,#camp-raid{font-size:11px;line-height:1.9;color:#617955}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:800px){.camp-columns{grid-template-columns:1fr}.camp-entry{flex-wrap:wrap}.camp-hall{padding:18px}.camp-hall .section-title{flex-wrap:wrap}.camp-hall .section-title h2{font-size:21px}}
.world-chat-toggle{position:fixed;right:22px;bottom:22px;z-index:40;border-radius:24px;padding:14px 22px;box-shadow:0 8px 25px #4c432c30}.world-chat-panel{position:fixed;right:22px;bottom:83px;width:390px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 110px);overflow:auto;padding:20px;border:1px solid #bfa975;border-radius:16px;background:#fbf6e8;box-shadow:0 16px 60px #354a3540;z-index:41}.world-chat-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.world-chat-header h2{font-size:20px;margin:0}.world-chat-header button{padding:5px 10px;font-size:21px}.chat-channels{display:flex;gap:7px;margin-top:18px}.chat-channels button{flex:1;padding:10px 6px;font-size:11px;background:#eee7d4;color:#8b7751;border-color:#cdbb93;box-shadow:none}.chat-channels [aria-selected=true]{background:#6f825b;color:#fff8e7;border-color:#647650}.world-chat-panel .camp-chat-log{height:260px}.chat-lobby-link{display:block;font-size:10px;color:#8d7543;margin-top:14px}.world-chat-panel .equipment-help{font-size:10px}.sect-create-form,.sect-current{border:1px solid var(--line);border-radius:12px;padding:24px;background:#f6f0e0;margin:25px 0}.sect-create-form h3,.sect-current h3{font-size:24px;color:#806638}.sect-create-form label,#sect-owner-tools label{display:grid;gap:9px;font-size:12px;margin:18px 0;color:#7c6a49}.sect-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.sect-card{padding:22px;border:1px solid var(--line);border-radius:12px;background:#f9f4e7;overflow-wrap:anywhere}.sect-card h3{font-size:22px;margin:0 0 15px}.sect-card p{white-space:pre-wrap;font-size:12px;line-height:2;color:var(--muted)}.sect-card small{display:block;font-size:10px;color:#8f815f;margin:18px 0}.sect-card button{width:100%}#sect-message{font-size:12px;color:#8e6f35;line-height:1.9}#sect-my-members{padding-left:20px;font-size:12px}#sect-owner-tools{border-top:1px solid var(--line);margin-top:22px;padding-top:10px}.discovery-state{font-size:10px;color:#7e8b66}@media(max-width:600px){.world-chat-panel{right:12px;bottom:76px;padding:16px}.world-chat-toggle{right:12px;bottom:16px}.sect-list{grid-template-columns:1fr}.sect-create-form,.sect-current{padding:18px}}
.resource-receipt{margin:20px 0;padding:20px;border:1px solid #c5b78e;border-radius:11px;background:#f1e8d3}.resource-receipt h3{margin:0 0 12px;font-size:18px}.resource-receipt p{font-size:12px;color:#85643a;line-height:2}.resource-receipt summary{font-size:11px;color:#8d784a;cursor:pointer}.resource-receipt small{display:block;margin-top:15px;font-size:10px;line-height:1.9;color:#8a8167}.resource-receipt ul{font-size:11px;line-height:2.1;overflow-wrap:anywhere}.recipe-stock{border:1px dashed #c5bd9e;border-radius:7px;padding:10px;background:#f5efdf;font-size:10px!important;line-height:2!important}
.path-selector{border:1px solid #c6b18a;background:linear-gradient(130deg,#f3e7d0,#e7eddb);padding:20px;border-radius:12px;margin:22px 0}.path-selector h3{font-size:18px;margin:0 0 15px}.path-buttons{display:flex;gap:12px}.path-buttons button{flex:1}.path-buttons [aria-pressed=true]{background:#75825d;color:#fff5de;border-color:#69774f}.path-selector p{font-size:11px;line-height:1.9;color:#7e745a}.path-selector summary{cursor:pointer;font-size:11px;color:#9b7540}.path-selector table{border-collapse:collapse;width:100%;font-size:10px;margin:15px 0}.path-selector td,.path-selector th{padding:9px 5px;border-bottom:1px solid #d7ccb0;text-align:left}.path-selector small{font-size:10px;line-height:1.9;color:#8c826a;display:block}
.tribulation-overlay{position:fixed;inset:0;z-index:100;background:radial-gradient(ellipse at 50% 20%,#40516a,#101724 75%);display:grid;place-items:center;padding:24px;isolation:isolate}.tribulation-sky{position:absolute;inset:0;overflow:hidden;z-index:-1;opacity:.8}.tribulation-sky svg{width:100%;height:100%;filter:drop-shadow(0 0 18px #a8d6ff)}.bolt{fill:none;stroke:#d5ecff;stroke-width:6;stroke-linejoin:bevel;opacity:0;animation:tribulation-flash 2.4s linear infinite}.bolt-two{animation-delay:.8s;stroke-width:4}.bolt-three{animation-delay:1.5s;stroke-width:3}.tribulation-card{max-width:510px;width:100%;padding:40px;border:1px solid #9bb1c0;border-radius:18px;background:#142331df;text-align:center;box-shadow:0 0 100px #8bbaeb35;color:#eef3ed}.tribulation-card h2{font-size:30px;line-height:1.6;margin:15px 0}.tribulation-card p{font-size:13px;line-height:2;min-height:45px;color:#c0d8e0}.tribulation-card progress{height:9px;background:#374e5b;margin:25px 0}.tribulation-card small{font-size:10px;color:#91aab5;line-height:2;display:block;margin-top:20px}.tribulation-card button{margin-top:8px}.tribulation-sigil{font-size:65px;display:inline-block;color:#d8efff;animation:tribulation-pulse 2s ease-in-out infinite}.tribulation-overlay.victorious{background:radial-gradient(ellipse,#53694d,#14251c)}.victorious .tribulation-card{background:#233b28ef;border-color:#d2bb70;box-shadow:0 0 110px #d3b85d30}.victorious .tribulation-sigil{color:#f2d478;animation:none}.victorious .tribulation-sky{display:none}@keyframes tribulation-flash{0%,18%,24%,100%{opacity:0}19%,22%{opacity:1}21%{opacity:.2}}@keyframes tribulation-pulse{50%{transform:scale(1.08);filter:drop-shadow(0 0 18px #b4dfff)}}@media(prefers-reduced-motion:reduce){.bolt,.tribulation-sigil{animation:none}.bolt-one{opacity:.25}}@media(max-width:600px){.tribulation-card{padding:28px 20px}.tribulation-card h2{font-size:25px}}
.path-choice-overlay{position:fixed;inset:0;z-index:110;background:#172a22e8;display:grid;place-items:center;padding:24px;backdrop-filter:blur(8px)}.path-choice-card{width:100%;max-width:570px;padding:36px;border:1px solid #b59b60;border-radius:18px;background:linear-gradient(140deg,#fbf2db,#e1e8d5);box-shadow:0 25px 90px #08140c60}.path-choice-card h2{font-size:30px;color:#786139}.path-choice-card p{font-size:13px;line-height:2;color:#7b795f}.path-choice-card>button{width:100%;margin-top:18px}.path-choice-card small{display:block;font-size:10px;line-height:1.9;color:#898068;margin-top:20px}.tribulation-preparation{border:1px solid #c1ab85;border-radius:12px;background:#f2e7d6;padding:20px;margin:20px 0}.tribulation-preparation h3{font-size:18px;margin:0 0 15px}.tribulation-preparation p{font-size:12px;line-height:1.9;color:#996341}.tribulation-preparation label{display:grid;gap:8px;font-size:11px;color:#7c6d51;margin:15px 0}.tribulation-preparation small{font-size:10px;color:#8a7c66;line-height:1.9;display:block}.tribulation-overlay.defeated{background:radial-gradient(ellipse,#673a35,#241417)}.defeated .tribulation-card{border-color:#bb7663;background:#382020ee}.defeated .tribulation-sigil{animation:none;color:#bb7663}.defeated .tribulation-sky{display:none}@media(max-width:600px){.path-choice-card{padding:24px}.path-choice-card h2{font-size:25px}}
.home-training,.home-upgrade,.character-vitals{margin-top:25px}.home-upgrade{padding:30px}.character-vitals{padding:28px}.vital-bars{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin:25px 0}.vital-bars>div:first-child progress::-webkit-progress-value{background:linear-gradient(90deg,#9f4d3b,#d78a6b)}.vital-bars>div:last-child progress::-webkit-progress-value{background:linear-gradient(90deg,#557f8c,#8ebfc4)}.combat-stat-grid{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:18px}.combat-stat-grid>div{padding:18px;border:1px solid #d2c6a3;border-radius:10px;background:#f6efde}.combat-stat-grid span{display:block;color:#8b7a55;font-size:11px;margin-bottom:12px}.combat-stat-grid b{font:600 25px 'Noto Serif',serif;color:#6d6f49}.combat-stat-grid small{display:block;font-size:9px;color:#8a8269;line-height:1.8;margin-top:10px}@media(max-width:700px){.vital-bars{grid-template-columns:1fr}.combat-stat-grid{grid-template-columns:1fr 1fr}.combat-stat-grid>div:last-child{grid-column:1/-1}.character-vitals,.home-upgrade{padding:22px}}
.home-subnav{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.home-subnav a{padding:10px 15px;border:1px solid #ccb98f;border-radius:20px;background:#f7efdccc;color:#8b723d;font-size:11px}.home-subnav a:hover{background:#e9e9d0}

.technique-panel{margin-top:24px}.technique-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.technique-card{padding:18px;border:1px solid #d7c9ab;border-radius:12px;background:#fffaf0}.technique-card p{line-height:1.7}.technique-card button{margin:4px}

.speed-details{margin:16px 0;padding:14px;border:1px solid #d7c9ab;border-radius:10px;background:#fffaf0}.speed-details summary{cursor:pointer;font-weight:600}#speed-breakdown{white-space:pre-line;line-height:1.9;font-size:14px}

/* Vân Sơn — Ngọc Dạ theme */
:root{--ink:#e6f4f1;--muted:#9bb6b6;--gold:#e2bf78;--line:#2c5057;--paper:#08151e;--jade:#63dcc5;--surface:#102832}
body.theme-jade{background:radial-gradient(ellipse at 15% 0%,#17434b88,transparent 45%),radial-gradient(ellipse at 95% 35%,#153c5480,transparent 50%),#08151e;color:var(--ink);background-attachment:fixed}
.theme-jade header{background:#091c26ed;border-color:#27505a;box-shadow:0 8px 35px #0004;backdrop-filter:blur(18px)}
.theme-jade .brand{color:#d7ede8}.theme-jade .brand span{color:#77e5cc;border-color:#52bda4;background:#163a3f;box-shadow:0 0 24px #59d9ba22}
.theme-jade nav a{color:#a6c1c2}.theme-jade nav a:hover{color:#e7fbf5;background:#1b3942;border-radius:8px}.theme-jade nav a.active{color:#7ce5cd;border-color:#6bd9c1;background:#193c43}
.theme-jade .landscape{background:linear-gradient(180deg,#163c4a80,#0b202e60,transparent)}.theme-jade .sun{background:#9edacc;box-shadow:0 0 100px #63d4cc66;opacity:.5}.theme-jade .far{background:#214a57;opacity:.6}.theme-jade .near{background:#14343f;opacity:.8}
.theme-jade .panel{background:linear-gradient(135deg,#142e38ef,#0e232deb);border:1px solid #31515a;box-shadow:0 18px 55px #0004,inset 0 1px #ffffff06}
.theme-jade .hero{background:linear-gradient(125deg,#183c43e8,#102735ed 70%);border-color:#3a686a}
.theme-jade :is(h1,h2,h3,h4){color:#e9f3e9}.theme-jade h1{color:#edcf8c;text-shadow:0 2px 20px #e8c77812}
.theme-jade :is(p,small,label,.description,.equipment-help,.equipment-note,.written-content){color:#a9c1c3}
.theme-jade :is(.eyebrow,.section-title>span,.training-summary span,.meter-label,.stats span){color:#8db8b7}
.theme-jade :is(strong,b,.training-summary strong,.combat-stat-grid b,.stats b){color:#e4d3a5}
.theme-jade :is(.seal,.awakening-seal,.profession-icon,.journey-icon){background:radial-gradient(circle,#264e54,#112d39);color:#83e3cc;border-color:#558b85;box-shadow:0 0 25px #52cab01a}
.theme-jade :is(.tag,.location-label,.innate-summary){background:#173b42;border-color:#365f65;color:#96e4d1}
.theme-jade :is(.goal,aside,.equipped-slot,.artifact,.array-art,.map-details,.mining-summary,.draft-preview,.manuscript-card,.material-slot,.effect-panel,.awakening-card,.profession-workshop,.war-campaign,.scout-status,.invasion-panel,.home-invasion,.enemy-profile,.camp-hall,.camp-columns>article,.camp-chat-log,.sect-create-form,.sect-current,.sect-card,.resource-receipt,.recipe-stock,.path-selector,.tribulation-preparation,.combat-stat-grid>div,.technique-card,.speed-details,.bag-item){background:#102a35;border-color:#31555e;color:#d8e9e7}
.theme-jade :is(.artifact.equipped,.craft-categories .selected,.path-buttons [aria-pressed=true]){background:#194841;border-color:#6ecfb4;box-shadow:inset 0 0 20px #68dfc00a}
.theme-jade .orb{background:radial-gradient(circle,#28615d,#132e3c 68%);border-color:#689b85;color:#e9ce92;box-shadow:0 0 50px #50d6b51a,inset 0 0 25px #061923}
.theme-jade .orb span{color:#e3c786}.theme-jade .stages span:before{background:#75bea9}.theme-jade .stages{border-color:#487b76}
.theme-jade button{background:linear-gradient(135deg,#71ddbf,#42ac9e);color:#082b30;border:1px solid #80e6cb;box-shadow:0 4px 16px #091b2355;font-weight:600;transition:filter .15s,transform .15s}
.theme-jade button:hover:not(:disabled){filter:brightness(1.12);transform:translateY(-1px)}.theme-jade button:disabled{opacity:.45;box-shadow:none}
.theme-jade :is(.secondary,.page-link,.home-subnav a){background:#142f3c;color:#badbd4;border-color:#3c666e;box-shadow:none}
.theme-jade .home-subnav a:hover{background:#214b50}.theme-jade :is(input,select,textarea){background:#091e29;color:#e3eeec;border:1px solid #3b626a;color-scheme:dark}.theme-jade :is(input,textarea)::placeholder{color:#77989f}
.theme-jade :is(input,select,textarea,button,a):focus-visible{outline:2px solid #9af0d4;outline-offset:3px}
.theme-jade progress,.theme-jade progress::-webkit-progress-bar{background:#071d28}.theme-jade progress::-webkit-progress-value{background:linear-gradient(90deg,#3eaa9a,#9be7c7)}.theme-jade progress::-moz-progress-bar{background:linear-gradient(90deg,#3eaa9a,#9be7c7)}
.theme-jade .vital-bars>div:first-child progress::-webkit-progress-value{background:linear-gradient(90deg,#b95c70,#ed9d9b)}.theme-jade .vital-bars>div:last-child progress::-webkit-progress-value{background:linear-gradient(90deg,#458ac5,#8edbdf)}
.theme-jade .path-choice-overlay{background:#04101ce8}.theme-jade .path-choice-card{background:radial-gradient(ellipse at top right,#215252,#102632 65%);border-color:#64ac9a;box-shadow:0 35px 120px #0009}.theme-jade .path-choice-card h2{color:#e8d29f}.theme-jade .path-choice-card p{color:#b5d1cc}.theme-jade .path-choice-card small{color:#94afb1}
.theme-jade .world-chat-panel{background:#0c2530f5;border-color:#47756f;box-shadow:0 16px 50px #0007}.theme-jade .chat-channels button{background:#15323d;color:#b7cfcb;border-color:#3d676b}.theme-jade .chat-channels [aria-selected=true]{background:#2c685e;color:#e3fff4}
.theme-jade :is(#invasion-report,#toast){background:#163b43;color:#dcf3e7;border-color:#4b867a}.theme-jade .home-invasion:hover{background:#19404b}
.theme-jade #map-viewport{background:#112b38;border-color:#477078}.theme-jade #map-clouds{background:radial-gradient(ellipse at 25% 40%,#315969,#142e40 70%)}
.theme-jade .map-marker :is(b,small){background:#102d39;color:#e2ece2;border-color:#5d8585}.theme-jade .map-marker .pin{background:#163f48;color:#e0cc96;border-color:#70b4a4}.theme-jade .map-marker.enemy-held .pin{background:#5c2939;color:#ffe2cd;border-color:#ce7a84}.theme-jade .map-marker.liberated .pin{background:#1e6258;color:#d8ffe9;border-color:#7cddbc}
.theme-jade table{border-color:#31555e}.theme-jade th{color:#cde7db}.theme-jade td{color:#a9c6c2;border-color:#31555e}.theme-jade hr{border-color:#31555e}
.theme-jade footer{color:#819fa6}.theme-jade .discovery-odds{color:#e5c98b;padding:12px;background:#2c342e;border:1px solid #736a43;border-radius:9px;line-height:1.8}
.backpack-page{padding:30px}.bag-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:18px;margin-top:24px}.bag-item{position:relative;border:1px solid var(--line);border-radius:14px;padding:22px;overflow-wrap:anywhere}.bag-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,#245c59,#173746);color:#93e5ca;font:25px serif;margin-bottom:14px}.bag-item h3{padding-right:50px;font-size:16px;margin:12px 0}.bag-quantity{position:absolute;right:20px;top:28px;font-size:20px}.bag-item p{line-height:1.85;font-size:12px}.bag-item .tag{display:inline-block;font-size:10px;padding:5px 9px}.bag-item .page-link{font-size:11px;padding:9px 12px}.backpack-page .section-title h2{margin-top:10px}#bag-empty{padding:45px 20px;text-align:center;border:1px dashed var(--line);border-radius:12px}
@media(max-width:600px){.backpack-page{padding:20px}.bag-grid{grid-template-columns:1fr}.theme-jade .section-title{gap:14px;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.theme-jade *{scroll-behavior:auto;transition:none}}

html{color-scheme:dark;scrollbar-color:#3a686b #0b202b;scrollbar-width:thin}.theme-jade nav{scrollbar-width:thin;scrollbar-color:#477a76 #102832}.theme-jade #library-message{color:#d9d49c;line-height:1.8}.theme-jade summary{color:#a9dfcf}.theme-jade .discovery-state{color:#a9c9c4}.theme-jade #game-main>div.eyebrow{color:#9ac4c1}

.afk-overlay{position:fixed;inset:0;z-index:140;background:#04101ce8;backdrop-filter:blur(10px);display:grid;place-items:center;padding:24px}.afk-card{width:min(100%,560px);padding:34px;border:1px solid #67ad9b;border-radius:18px;background:linear-gradient(135deg,#1b4348,#102732);box-shadow:0 30px 100px #0008}.afk-card h2{color:#ead39b}.afk-card p{line-height:1.9;color:#bad2ce}.afk-card .path-buttons{margin-top:24px}@media(max-width:600px){.afk-card{padding:24px}.afk-card .path-buttons{display:grid}}

.rankings-page{padding:32px}.rankings-page h2{margin:12px 0 0}.rankings-summary{display:grid;grid-template-columns:1fr 1.5fr 1.5fr;gap:16px;margin:24px 0}.rankings-summary article{padding:20px;border:1px solid #315a60;border-radius:12px;background:linear-gradient(135deg,#1c4146,#102a35)}.rankings-summary span{display:block;color:#97bdb8;font-size:11px;margin-bottom:12px}.rankings-summary b{font-size:19px;line-height:1.6}.rank-tabs{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0}.rank-tabs [aria-selected=true]{background:linear-gradient(135deg,#71ddbf,#42ac9e);color:#082b30}.ranking-table-wrap{overflow-x:auto;border:1px solid #31555e;border-radius:12px}.ranking-table{width:100%;border-collapse:collapse;min-width:740px;font-size:12px}.ranking-table th,.ranking-table td{text-align:left;padding:17px 14px;border-bottom:1px solid #294852;line-height:1.8}.ranking-table th{background:#183a42;font-size:10px;letter-spacing:.04em}.ranking-table tbody tr:last-child td{border-bottom:0}.ranking-table tbody tr:hover{background:#1a3943}.ranking-table td small{display:block;font-size:10px;color:#88aaa9;margin-top:6px}.ranking-place{font-size:17px;font-weight:700;color:#bdd8ce}.ranking-table .place-1{color:#f4d48d}.ranking-table .place-2{color:#cee5ed}.ranking-table .place-3{color:#d4a57c}.ranking-self{background:#20473f66}#rankings-empty{padding:25px;border:1px dashed #416660;border-radius:12px}.theme-jade #rankings-status{color:#99cabc}@media(max-width:650px){.rankings-page{padding:20px}.rankings-summary{grid-template-columns:1fr}.rankings-summary article{padding:16px}.rankings-summary b{font-size:17px}.rank-tabs button{flex:1;font-size:11px}}

/* Tinh Hà — fixed left navigation and cosmic artwork */
body.theme-jade{--sidebar-width:246px;padding-left:var(--sidebar-width);background:linear-gradient(180deg,#050b1d40,#060f24a8),url('cosmic-galaxy.webp') center center / cover fixed no-repeat,#070d20}
.theme-jade .landscape{display:none}
.theme-jade #game-header{position:fixed;inset:0 auto 0 0;width:var(--sidebar-width);height:100dvh;min-height:0;display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;gap:0;padding:28px 18px 20px;background:linear-gradient(180deg,#0c1830f2,#080f22f2);border:0;border-right:1px solid #87a5e033;box-shadow:12px 0 48px #02051466;z-index:30;backdrop-filter:blur(20px)}
.theme-jade #game-header .brand{display:flex;align-items:center;gap:13px;letter-spacing:3px;font-size:13px;padding:0 5px 26px;border-bottom:1px solid #869fd62b}
.theme-jade #game-header .brand span{flex:none;margin:0;font-size:29px;color:#98dce7;background:#182c4b;border-color:#648fb0;box-shadow:0 0 24px #62c2df15}
.theme-jade #game-nav{display:flex;flex:1;min-height:0;width:100%;flex-direction:column;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;gap:5px;overflow-x:hidden;overflow-y:auto;margin:20px 0;padding:0 3px;scrollbar-width:thin;scrollbar-color:#425875 transparent;font-size:12px}
.theme-jade #game-nav a{display:block;width:100%;padding:12px 11px;white-space:normal;line-height:1.6;color:#adc0da;border:1px solid transparent;border-left:3px solid transparent;border-radius:9px;transition:background .15s,color .15s}
.theme-jade #game-nav a:hover{background:#667fb01a;color:#e6edff}.theme-jade #game-nav a.active{background:linear-gradient(90deg,#5488be35,#617eab0e);color:#a2e4ee;border-color:#749ac22e;border-left-color:#8ad6e5;box-shadow:inset 0 0 22px #5f9ae808}
.theme-jade #game-header .profile{flex:none;margin:0;padding:18px 12px 0;border-top:1px solid #869fd62b;color:#8197b2;font-size:10px}.theme-jade #game-header .profile b{color:#ebd4a2;font-size:13px;margin-top:7px}
.theme-jade #sidebar-toggle{display:none}
.theme-jade #game-main{width:100%;max-width:1240px;margin:0 auto;padding:38px clamp(20px,3vw,46px) 28px;min-height:100dvh}
.theme-jade .panel{background:linear-gradient(135deg,#102139dd,#101a30db);border-color:#8dadd132;box-shadow:0 16px 60px #0206194d,inset 0 1px #ffffff06;backdrop-filter:blur(9px)}
.theme-jade .hero{background:linear-gradient(125deg,#18324acb,#101b32d9);border-color:#7da2c54d}.theme-jade .home-subnav a{background:#10233bc9;border-color:#637e9b66;color:#b6d4e0}
.theme-jade .path-choice-overlay{background:#050d1e94;backdrop-filter:blur(5px)}.theme-jade .path-choice-card{background:linear-gradient(135deg,#19354be8,#101d35ed);border-color:#8caebf70}.theme-jade .afk-overlay{background:#050d1eb8}
@media(min-width:1700px){body.theme-jade{--sidebar-width:266px}.theme-jade #game-nav{font-size:13px}.theme-jade #game-nav a{padding:14px}}
@media(min-width:901px) and (max-width:1180px){body.theme-jade{--sidebar-width:218px}.theme-jade #game-header{padding:22px 12px}.theme-jade #game-nav{font-size:11px}.theme-jade .hero{grid-template-columns:minmax(0,1fr)}.theme-jade .training-page{grid-template-columns:minmax(0,1fr)}}
@media(max-width:900px){body.theme-jade{padding-left:0;padding-top:76px;background-attachment:scroll}.theme-jade #game-header{inset:0 0 auto 0;width:100%;height:76px;min-height:76px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;padding:12px 18px;border-right:0;border-bottom:1px solid #87a5e033}.theme-jade #game-header .brand{padding:0;border:0;font-size:12px;gap:12px}.theme-jade #game-header .brand span{font-size:24px}.theme-jade #sidebar-toggle{display:block;margin:0;padding:10px 15px;font-size:12px}.theme-jade #game-header .profile{display:none}.theme-jade #game-nav{display:none;position:fixed;top:76px;left:0;width:min(300px,88vw);height:calc(100dvh - 76px);margin:0;padding:18px 16px 28px;background:#0a152bf5;box-shadow:16px 18px 50px #0007;backdrop-filter:blur(20px);border-right:1px solid #7897bf44;font-size:13px}.theme-jade #game-header.menu-open #game-nav{display:flex}.theme-jade #game-main{padding:25px 16px;min-height:calc(100dvh - 76px)}}

.stone-training{margin:22px 0;padding:20px;border:1px solid #6e8fbc66;border-radius:12px;background:linear-gradient(125deg,#19364a,#14233e)}.stone-training p{font-size:12px;line-height:1.9}.stone-training label{display:grid;gap:10px;margin:16px 0}.stone-training button{margin-top:8px}#mining-quota{line-height:1.9;padding:15px;border:1px solid #4b708a;border-radius:10px;background:#142c42}

/* Account access, identity menu and synchronized preferences */
.auth-overlay{position:fixed;inset:0;z-index:300;overflow:auto;display:grid;place-items:center;padding:32px 18px;background:linear-gradient(135deg,#050c1dc9,#0b142fc9),url('cosmic-galaxy.webp') center/cover fixed}
.auth-card{width:min(100%,470px);padding:34px;border:1px solid #7dabc155;border-radius:20px;background:linear-gradient(145deg,#183248ee,#111c34f2);box-shadow:0 24px 100px #0008;backdrop-filter:blur(16px)}.auth-card>.brand{display:block;color:#a3e5ec;font-size:17px;margin-bottom:28px}.auth-card>.eyebrow{display:block;font-size:9px;color:#9ab9ca}.auth-card h1{font-size:30px;color:#ebd3a0}.auth-card p,.auth-card small{color:#aac2cf;line-height:1.9}.auth-card p{font-size:12px}.auth-card small{display:block;font-size:10px}.auth-tabs{display:flex;gap:10px;margin:24px 0}.auth-tabs button{flex:1}.auth-tabs [aria-selected=true]{background:#2b625f;color:#d7fbee;border-color:#7cc9b4}.auth-card label{display:grid;gap:9px;font-size:12px;color:#bfd4dc;margin:17px 0}.auth-card input{width:100%;padding:13px;border-radius:9px;min-width:0}.auth-card #auth-submit{width:100%;margin-top:18px}.auth-card .auth-import{display:flex;align-items:flex-start;gap:10px}.auth-import input{width:16px;height:16px;margin:4px 0;flex:none}.auth-import span{line-height:1.9;font-size:11px}.auth-card #auth-message{color:#ead59f;min-height:24px}.auth-pending #game-main,.auth-pending #game-header{visibility:hidden}
.theme-jade #game-header .account-profile{padding:16px 0 0}.theme-jade .player-toggle{display:flex;width:100%;align-items:center;gap:10px;text-align:left;padding:11px 9px;border-radius:12px;box-shadow:none}.player-avatar{display:grid;place-items:center;flex:none;width:35px;height:35px;border:1px solid #a8c6c8;border-radius:50%;font:23px serif;color:#9ee4da;background:#214653}.player-copy{min-width:0;flex:1}.theme-jade #game-header .profile .player-copy b{font-size:12px;margin:0}.player-copy small{display:block;font-size:9px;line-height:1.7;margin-top:5px;overflow-wrap:anywhere}
.player-menu{position:fixed;z-index:170;left:calc(var(--sidebar-width,246px) + 12px);bottom:20px;width:294px;max-height:calc(100dvh - 40px);overflow:auto;padding:15px;border:1px solid #75989c88;border-radius:15px;background:#102b3bf5;box-shadow:0 20px 80px #0009;backdrop-filter:blur(18px)}.player-menu>button,.player-menu>a{display:block;width:100%;text-align:left;font-size:12px;padding:12px;margin:5px 0;border-radius:8px;line-height:1.6}.player-menu>a:hover{background:#24475a}.player-menu>p{font-size:10px;line-height:1.8;padding:0 6px}.account-settings{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:12px 0;border-block:1px solid #597c8655;margin:12px 0}.account-settings button{display:flex;flex-direction:column;align-items:center;gap:7px;padding:10px 3px;font-size:19px}.account-settings span{font-size:9px;line-height:1.5}.account-settings [aria-pressed=true]{background:#2b665b;color:#d9ffed;border-color:#8aceb0}.theme-jade .logout-button{color:#eabfba;border-top:1px solid #86655d66}.theme-jade #account-sync{color:#a3d6bd}.theme-jade #account-action-message{color:#e7c99f;overflow-wrap:anywhere}
.account-modal{position:fixed;inset:0;z-index:190;background:#050d1ec9;backdrop-filter:blur(8px);display:grid;place-items:center;padding:24px;overflow:auto}.account-modal-card{width:min(100%,610px);padding:30px;border:1px solid #6fa7ad88;border-radius:18px;background:linear-gradient(140deg,#19394b,#142139);box-shadow:0 25px 90px #0008}.account-modal-card h2{font-size:23px;margin:0}.account-modal-card .section-title button{padding:8px 15px}.account-modal-card p,.account-modal-card li{font-size:12px;line-height:2;color:#bdd0d6}.account-modal-card li{margin:12px 0}.identity-fields{margin:24px 0}.identity-fields>div{padding:12px 0;border-bottom:1px solid #6e8d9c33}.identity-fields dt{font-size:10px;color:#8db6bf}.identity-fields dd{font-size:13px;line-height:1.8;margin:7px 0 0;overflow-wrap:anywhere}.stale-modal{z-index:360}.stale-modal h2{color:#e6cca2}
body.cosmic-bright.theme-jade{background-image:linear-gradient(180deg,#06102208,#0a173947),url('cosmic-galaxy.webp')}.cosmic-bright.theme-jade .panel{background:linear-gradient(135deg,#173950cc,#243456c9);border-color:#acd4e766}.reduced-effects *,.reduced-effects *::before,.reduced-effects *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important;backdrop-filter:none!important}.reduced-effects .panel{background:#12243bed}
@media(max-width:900px){.theme-jade #game-header{grid-template-columns:1fr auto auto}.theme-jade #game-header .account-profile{display:block;order:3;padding:0;border:0}.theme-jade #game-header .player-toggle{width:44px;height:44px;padding:4px;justify-content:center}.theme-jade #game-header .player-copy,.theme-jade #game-header .player-toggle>span:last-child{display:none}.player-menu{left:auto;right:12px;top:82px;bottom:auto;width:min(310px,calc(100vw - 24px));max-height:calc(100dvh - 96px)}}
@media(max-width:480px){.auth-card{padding:25px}.auth-card h1{font-size:26px}.account-modal-card{padding:22px}.account-modal-card h2{font-size:19px}}

.player-menu{display:block;text-align:left}.player-menu>p{min-height:0;margin:8px 0;line-height:1.7}.player-menu>button,.player-menu>a{padding:10px 11px;margin:3px 0}.player-menu .account-settings{width:100%;margin:10px 0;padding:9px 0}.player-menu .account-settings button{margin:0;padding:9px 3px}.auth-pending #world-chat-toggle,.auth-pending #world-chat-panel{display:none}.theme-jade .player-menu .account-language{padding:8px 6px;margin:5px 0}

.auth-overlay,.account-modal{display:flex;align-items:flex-start;justify-content:center}.auth-card,.account-modal-card{margin-block:auto}

body.auth-pending{height:100dvh;overflow:hidden}

/* Account portraits */
.player-avatar{overflow:hidden;flex-shrink:0}.player-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.portrait-editor{display:flex;gap:20px;align-items:flex-start;margin:18px 0}.identity-avatar{width:112px;height:112px;object-fit:cover;border:2px solid #72c7bd;border-radius:22px;flex-shrink:0}.portrait-options{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:12px 0}.portrait-preset{padding:3px;width:56px;height:56px;border-radius:12px;overflow:hidden}.portrait-preset img{width:100%;height:100%;border-radius:8px}.portrait-upload{display:inline-flex;cursor:pointer;padding:10px 14px;border:1px solid #527f88;border-radius:10px}.portrait-upload:focus-within{outline:2px solid #8fdfd0}.roster-avatar,.ranking-avatar{width:38px;height:38px;object-fit:cover;border-radius:50%;border:1px solid #54898d}.roster-avatar{float:left;margin:0 12px 2px 0}.ranking-avatar{vertical-align:middle;margin-right:10px}#avatar-status{min-height:1.4em;color:#9fe2d5}@media(max-width:560px){.portrait-editor{flex-direction:column}.identity-avatar{width:90px;height:90px}}

.auth-character-creation{margin:20px 0;padding:14px;border:1px solid #416a75;border-radius:14px;background:#102b3acc}.auth-character-creation h3{margin:0;color:#e9d29d;font-size:16px}.auth-character-creation p{font-size:11px}.auth-character-creation .hero-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.auth-character-creation .hero-choice{min-width:0;padding:5px 2px 8px;font-size:10px}.auth-character-creation .hero-choice-art{max-width:100%;height:150px!important;background-repeat:no-repeat}.auth-character-creation label{max-width:260px}@media(max-width:480px){.auth-character-creation .hero-options{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-character-creation .hero-choice-art{height:125px!important}}
