/* Clear readable controls at the visible viewport size, including Android text scaling. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body[data-chronicle] #game{font-family:"Microsoft YaHei","PingFang SC",sans-serif}
body[data-chronicle] #game *,body[data-chronicle] #game *:before,body[data-chronicle] #game *:after{box-sizing:border-box}
body[data-chronicle] #chronicle-panel{padding:max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}
body[data-chronicle] .chronicle-sheet{max-width:1180px;grid-template-rows:60px minmax(0,1fr) auto}
body[data-chronicle] .chronicle-sheet>header{padding:7px 16px;gap:8px}
body[data-chronicle] #chronicle-title{font-size:23px;letter-spacing:2px;line-height:1.2}
body[data-chronicle] #chronicle-kicker{display:none}
body[data-chronicle] #chronicle-body{min-height:0;overscroll-behavior:contain}
body[data-chronicle] #chronicle-footer{padding:5px 16px;font-size:11px;line-height:1.4}
#chronicle-interface .sp-space{box-sizing:border-box;isolation:isolate}
#chronicle-interface .sp-space:before{background:linear-gradient(180deg,#0d262226,#0d262208 60%,#0d26224d)}
#chronicle-interface .sp-menu{display:flex;flex-direction:column;background-image:linear-gradient(130deg,#102c2cf5,#183932ed),var(--scene)}
#chronicle-interface .sp-compass{flex:1;min-height:0;align-content:center;gap:12px;padding:20px 7%}
#chronicle-body .sp-compass .sp-tile{min-height:100px;border:0;border-bottom:1px solid #d2bb7933;background:transparent;border-radius:0;box-shadow:none}
#chronicle-body .sp-compass .sp-tile:hover{background:#e0d6ab12}
#chronicle-body .sp-tile{font-size:13px;line-height:1.4}
#chronicle-body .sp-bottom{position:sticky;bottom:0;z-index:3;flex-shrink:0;background:#102b27f5;max-width:100%;gap:6px;padding:7px}
#chronicle-body .sp-bottom button{min-height:44px;padding:6px 10px;font-size:12px}
.sp-icon--compass,.sp-icon--book,.sp-icon--portal,.sp-icon--garden,.sp-icon--sword,.sp-icon--map,.sp-icon--people,.sp-icon--stars,.sp-icon--ore,.sp-icon--world,.sp-icon--fate,.sp-icon--cauldron{background-image:url('./assets/action-icons.webp');background-size:400% 300%;background-repeat:no-repeat;border-radius:12px}
.sp-icon--compass{background-position:0 0}.sp-icon--book{background-position:33.333% 0}.sp-icon--portal{background-position:66.667% 0}.sp-icon--garden{background-position:100% 0}
.sp-icon--sword{background-position:0 50%}.sp-icon--map{background-position:33.333% 50%}.sp-icon--people{background-position:66.667% 50%}.sp-icon--stars{background-position:100% 50%}
.sp-icon--ore{background-position:0 100%}.sp-icon--world{background-position:33.333% 100%}.sp-icon--fate{background-position:66.667% 100%}.sp-icon--cauldron{background-position:100% 100%}
#chronicle-panel[data-panel=practice] .sp-space{background-image:url('./assets/action-retreat.webp');background-position:center 46%}
#chronicle-panel[data-panel=practice] .sp-hero,#chronicle-panel[data-panel=practice] .sp-qi-ring{display:none}
#chronicle-panel[data-panel=practice] .sp-stations,#chronicle-panel[data-panel=life] .sp-stations{min-height:100%;height:auto;padding:70px 4% 18px;grid-template-columns:125px 1fr 125px;grid-auto-rows:minmax(65px,1fr);gap:12px}
#chronicle-panel[data-panel=life] .sp-stations{min-height:calc(100% - 58px);padding-top:45px;grid-auto-rows:minmax(52px,1fr)}
#chronicle-panel[data-panel=life] .sp-plots{display:none}
#chronicle-body .sp-stations>.sp-tile{background:#132b25d9!important;border:1px solid #dbcdab77;box-shadow:0 3px 12px #07191233;display:flex;align-items:center;gap:8px;text-align:left;max-width:none;padding:8px}
#chronicle-body .sp-stations .sp-icon{flex:none;width:38px;height:38px;margin:0}
.sp-cultivation,.sp-home-stats{max-width:42%;width:360px;border-radius:4px;background:#16332cdf;padding:6px 12px;z-index:2}
.sp-cultivation{font-size:13px}.sp-cultivation span{font-size:11px}
#chronicle-interface .sp-roster{grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px}
#chronicle-interface .sp-character-card{display:grid;grid-template-columns:68px 1fr;grid-template-rows:1fr 44px;gap:6px;padding:10px!important;text-align:left}
.sp-character-card .sp-character-portrait{grid-row:1/3;width:65px;height:100px;align-self:center}
#chronicle-interface .sp-character-card button{margin:0;min-height:44px;text-align:left;padding:8px 12px}
#chronicle-interface .sp-character-card button b{font-size:17px}.sp-character-card button span{display:block;font-size:12px}
#action-dialogue{position:absolute;left:50%;top:138px;transform:translateX(-50%);width:min(480px,48%);display:flex;gap:10px;padding:9px 34px 9px 10px;z-index:21;background:#122c27ee;border-left:2px solid #d6bc82;box-shadow:0 4px 18px #09251d33;pointer-events:none;color:#f3ead4}
#action-dialogue img{width:40px;height:50px;object-fit:cover;border:1px solid #bea77466}
#action-dialogue b{font-size:12px;color:#e6cd92}#action-dialogue p{font-size:12px;line-height:1.65;margin:3px 0 0;max-height:66px;overflow:auto;pointer-events:auto;touch-action:pan-y}
#action-dialogue button{position:absolute;right:0;top:0;width:32px;min-height:44px;border:0;background:transparent;color:#e6d9bb;pointer-events:auto;font-size:22px}
#action-dialogue[hidden],#action-dialogue.obscured,#action-track[hidden]{display:none!important}
#action-track{position:absolute;left:50%;top:101px;transform:translateX(-50%);z-index:21;min-height:36px;padding:6px 13px;border:1px solid #d1b97a99;background:#193c32df;color:#eedaab;font:12px "Microsoft YaHei",sans-serif;cursor:pointer;border-radius:3px;touch-action:manipulation}
@media(orientation:landscape) and (max-height:520px){
 body[data-chronicle] .chronicle-sheet,body[data-chronicle] #chronicle-panel[data-spatial=true] .chronicle-sheet{grid-template-rows:46px minmax(0,1fr) auto}
 body[data-chronicle] #chronicle-panel[data-spatial=true] .chronicle-sheet{grid-template-rows:46px minmax(0,1fr)}
 body[data-chronicle] #chronicle-title{font-size:18px}body[data-chronicle] .chronicle-sheet>header{padding:0 10px}
 #chronicle-interface .sp-compass{padding:8px 5%;gap:6px}
 #chronicle-body .sp-compass .sp-tile{min-height:68px;padding:4px;font-size:12px}
 #chronicle-interface .sp-compass .sp-icon{width:40px;height:40px;margin-bottom:3px}
 #chronicle-panel[data-panel=practice] .sp-stations{padding-top:58px;padding-bottom:8px;grid-template-columns:125px 1fr 125px;grid-auto-rows:minmax(44px,1fr);gap:5px}
 #chronicle-panel[data-panel=life] .sp-stations{padding-top:35px;padding-bottom:5px;grid-auto-rows:minmax(44px,1fr);gap:4px;min-height:calc(100% - 58px)}
 #chronicle-body .sp-stations>.sp-tile{min-height:44px;padding:3px 6px!important;font-size:12px}
 #chronicle-body .sp-stations .sp-icon{width:30px;height:30px}
 body[data-chronicle] #chronicle-tactics{bottom:8px;max-width:calc(100% - 340px);flex-wrap:wrap;justify-content:center;gap:3px}
 body[data-chronicle] #chronicle-tactics button{min-height:34px;padding:4px 7px;font-size:11px}
 #action-track{left:auto;right:12px;top:68px;transform:none;min-height:36px}
 #action-dialogue{top:108px;width:calc(100% - 390px);min-width:180px;max-width:450px;padding:6px 30px 6px 8px;gap:6px}
 #action-dialogue img:not([hidden]){display:block;width:36px;height:42px;flex:0 0 36px;align-self:flex-start;object-fit:contain}#action-dialogue p{font-size:11px;line-height:1.5;max-height:50px}
 body[data-chronicle] .quest{left:50%;top:12px;max-width:calc(100% - 450px);min-width:150px;padding:4px 6px;gap:6px}
 body[data-chronicle] .quest strong{font-size:13px;line-height:1.35}body[data-chronicle] #direction{font-size:11px;line-height:1.45}
 body[data-chronicle] #journal{display:none}
 body[data-chronicle] #boss-hud{top:80px;left:50%;transform:translateX(-50%);width:min(280px,35%)}
 body[data-chronicle] #boss-hud>span{font-size:12px}
}
@media(orientation:portrait) and (max-width:600px){
 body[data-chronicle] #game[data-orientation=portrait] .quest{position:absolute;grid-area:1/1/-1/-1;top:calc(var(--shortcut-top,76px) + 40px);left:0;right:0;width:100%;max-width:none;min-width:0;transform:none;padding:5px 10px}
 body[data-chronicle] #game[data-orientation=portrait] #journal{display:none}
 body[data-chronicle] #game[data-orientation=portrait] .quest strong{font-size:13px}
 body[data-chronicle] #game[data-orientation=portrait] #direction{font-size:11px;line-height:1.4}
 #action-track{top:calc(var(--shortcut-top,76px) + 112px);left:auto;right:14px;transform:none;min-height:44px}
 #action-dialogue{top:245px;width:calc(100% - 28px);max-width:420px}
 body[data-chronicle] #chronicle-panel{padding:8px}
 #chronicle-interface .sp-compass{padding:12px;gap:8px}#chronicle-body .sp-compass .sp-tile{min-height:95px}
 #chronicle-interface .sp-roster{grid-template-columns:1fr}
 #chronicle-panel[data-panel=practice] .sp-stations,#chronicle-panel[data-panel=life] .sp-stations{grid-template-columns:105px 1fr 105px;padding-top:95px;gap:14px}
 #chronicle-body .sp-stations>.sp-tile{flex-direction:column;text-align:center;min-height:64px}
 .sp-cultivation,.sp-home-stats{max-width:85%;width:85%}
}
@media(orientation:landscape) and (max-height:520px){
 body[data-chronicle] #game[data-mobile=true][data-orientation=landscape] .hud-top>#boss-hud{position:absolute;grid-area:1/1/-1/-1;left:50%;right:auto;top:68px;transform:translateX(-50%);width:min(280px,35%);max-width:280px}
 body[data-chronicle] #game[data-orientation=landscape] #boss-hud>span{font-size:12px}
 body[data-chronicle] #game.in-action-combat #action-dialogue{top:126px}
}
