/* Approved 480 x 920 layout. GameCanvas owns scaling and safe areas. */
.loading-screen__scene {
  width:min(calc(100vw - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)),calc((100vh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)) * .52173913));
  height:min(calc(100vh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)),calc((100vw - env(safe-area-inset-left,0px) - env(safe-area-inset-right,0px)) * 1.916666667));
  font-size:min(calc(100vw * .035416667),calc(100vh * .01847826));
}
#game-root { border-radius:15px; }
#game-root::after { content:""; position:absolute; inset:0; z-index:20000; pointer-events:none; border:4px solid #b8a576; border-radius:15px; box-shadow:inset 0 0 0 2px #204b4b,inset 0 0 0 3px #ceb87970; }
#game-root { --jade-v20-page:#b8c7b5; --jade-v20-card:#c4d0bd; --jade-v20-line:#8fa58e; --jade-v20-ink:#203f3d; --jade-ink:#203f3d; --jade-muted:#4b6356; --jade-paper:#b8c7b5; --jade-card:linear-gradient(135deg,#c7d0bc,#b7c9b7); --silk-page-paper:linear-gradient(135deg,#becbb7,#abc1b1); --text-muted:#4b6356; }
#game-root .game-header { height:46px!important; min-height:46px!important; padding:3px 14px; }
#game-root .bottom-nav { position:absolute!important; left:0!important; right:0!important; bottom:0; width:100%!important; transform:none!important; height:65px!important; min-height:65px!important; margin:0; }
#game-root .bottom-nav button { font-size:16px; }
#game-root[data-active-page="cultivate"] { background-size:auto 1024px; background-position:center calc(-90px + (var(--game-base-height) - 853px) * .58); }
#game-root[data-active-page="cultivate"] .game-content { position:static!important; }
#game-root[data-active-page="cultivate"] .cultivate-character-stage { top:calc(173px + (var(--game-base-height) - 853px) * .58); }
#game-root[data-active-page="cultivate"] .cultivate-info-panel { top:calc(427px + (var(--game-base-height) - 853px) * .7); }
#game-root[data-active-page="cultivate"] .manual-cultivation-button { top:calc(386px + (var(--game-base-height) - 853px) * .58); }
#game-root[data-active-page="cultivate"] .cultivate-entry-row { top:calc(var(--game-base-height) - 247px); grid-auto-rows:44px; max-height:142px; gap:5px; }
#game-root[data-active-page="cultivate"] .cultivate-entry-row .cultivate-entry-button { height:44px; min-height:44px; background:linear-gradient(120deg,#bacbb8f5,#a2beb0f5)!important; }
#game-root[data-active-page="cultivate"] .cultivate-entry-row .cultivate-entry-button strong,
#game-root[data-active-page="cultivate"] .cultivate-entry-row .cultivate-companion-button { font-size:19px; }
#game-root[data-active-page="cultivate"] .cultivate-chat-entry { top:calc(var(--game-base-height) - 99px); height:28px; min-height:28px; }
#game-root:not([data-active-page="cultivate"]) { background:#b8c7b5; }
#game-root:not([data-active-page="cultivate"]) .game-content { position:absolute; inset:46px 0 65px; padding:0; margin:0; display:block; background:#b8c7b5; overflow:hidden; }
#game-root:not([data-active-page="cultivate"]) .player-interface { display:block; height:100%; min-height:0; }
#game-root .page-panel:not(.cultivate-panel) { width:100%!important; height:100%!important; min-height:0!important; max-height:none!important; margin:0!important; padding:16px 18px; border:0!important; border-radius:0!important; box-shadow:none!important; overflow:auto; color:var(--jade-v20-ink); background:linear-gradient(145deg,#bfccb9,#abc0b0)!important; }
#game-root .page-panel:not(.cultivate-panel)::after,#game-root .page-panel:not(.cultivate-panel)::before { content:none!important; }
#game-root .page-panel:not(.cultivate-panel) .feature-page-heading { margin:0 0 14px; }
#game-root .page-panel h2 { font-size:24px!important; }
#game-root :is(.shop-tab,.kungfu-category-button,.rank-tab,.dungeon-category-button,[data-artifact-tab],[data-physique-tab],.spirit-beast-tabs button,.companion-tabs button) { font:18px/24px KaiTi,STKaiti,SimSun,serif!important; padding:8px 5px!important; min-height:42px; }
#game-root :is(.shop-category-button,.page-back-button,.crafting-rules-button,.companion-help-button) { font:16px/22px KaiTi,STKaiti,SimSun,serif!important; }
#game-root :is(.shop-tab,.shop-category-button,.kungfu-category-button,.rank-tab,.dungeon-category-button,[data-artifact-tab],.spirit-beast-tabs button,.companion-tabs button):not(.is-active):not(.is-selected):not(:disabled) { background:linear-gradient(#cdd6c1,#b1c5b1)!important; color:#284b44!important; box-shadow:none!important; }
#game-root :is(.shop-tab,.kungfu-category-button,.rank-tab,.dungeon-category-button,[data-artifact-tab],.spirit-beast-tabs button,.companion-tabs button)::after { content:none!important; }
#game-root :is(.physique-card,.physique-refinement-list,.physique-panel-section,.physique-refinement-row,.spirit-beast-profile,.spirit-beast-attributes,.spirit-beast-bag,.spirit-beast-card,.companion-current,.companion-known-card,.companion-content,.companion-attribute-section,.companion-kungfu-section,.companion-equipment-section,.settings-section,.artifact-cultivation-header,.artifact-detail-section,.artifact-cultivation-card,.artifact-cost-row,.artifact-progress,.kungfu-card,.online-reward-task,.newcomer-task-row,.newcomer-content,.rank-table__row,.dungeon-card,.shop-product-card,.mail-list-summary) { background:linear-gradient(135deg,#c8d1be,#b6c8b5)!important; border-color:#8fa38c!important; box-shadow:none!important; color:#203f3d; }
#game-root :is(.companion-attribute-grid,.spirit-beast-attribute-grid,.attribute-summary-grid) > div { background:#c4cfbb!important; border-color:#9aae96!important; box-shadow:none!important; }
#game-root :is(.companion-attribute-section,.companion-kungfu-section,.companion-equipment-section) > h3 { background:#bccdb8!important; border-color:#8da48b!important; }
#game-root :is(.companion-current-profile,.spirit-beast-profile__body,.companion-current-summary,.spirit-beast-profile__info) { background:transparent!important; }
#game-root :is(.kungfu-card__current-effect,.kungfu-card__progression) { background:#c8d3c0!important; border-color:#8ea48d!important; }
#game-root :is(.online-reward-task,.newcomer-task-row).is-claimed { opacity:1!important; }
#game-root .page-panel button:disabled,#game-root dialog button:disabled { opacity:1!important; color:#52685f!important; background:#a9baab!important; border-color:#8fa190!important; box-shadow:none!important; }
#game-root .page-panel:not(.cultivate-panel) :is(.primary-button,.secondary-button) { font-family:KaiTi,STKaiti,SimSun,serif; font-size:17px; }
#game-root :is([data-action="challenge-dungeon"],[data-action="start-dungeon"],[data-action="open-dungeon-sweep"],.dungeon-card__actions button,.dungeon-actions button) { font:18px/24px KaiTi,STKaiti,SimSun,serif!important; min-height:40px; }
#game-root .dungeon-category-button small { display:none!important; }
#game-root .physique-panel-section { border:0; background:transparent!important; padding:0; }
#game-root .physique-card { display:grid; grid-template-columns:88px minmax(0,1fr); grid-template-rows:auto auto auto; gap:7px 16px; padding:18px; min-height:0; }
#game-root .physique-visual-icon { grid-row:1/4; width:88px; height:88px; align-self:center; border-radius:10px; border:1px solid #93a68c; background-color:#d0d7bf; flex-shrink:0; }
#game-root .physique-card__heading { grid-column:2; display:flex; flex-direction:column; align-items:flex-start; gap:4px; }
#game-root .physique-card__heading strong { font-size:23px; }
#game-root .physique-card__heading span { font-size:14px; color:var(--physique-quality-color,#634788); }
#game-root .physique-card__effect { grid-column:2; }
#game-root .physique-card__effect small { display:none; }
#game-root .physique-card__effect ul { padding:0; margin:0; list-style:none; font-size:16px; line-height:1.7; }
#game-root .physique-card__active { grid-column:2; color:#345f46; font-size:14px; }
#game-root .physique-refinement-list { border:1px solid #8fa38c; padding:16px; border-radius:9px; }
#game-root .physique-refinement-summary { margin:0 0 12px; padding:0 0 12px; border:0; border-bottom:1px solid #92a58e; background:none!important; font-size:16px; }
#game-root .physique-refinement-row { display:grid; grid-template-columns:72px minmax(0,1fr) 78px; align-items:center; gap:12px; padding:8px 0; border:0!important; background:none!important; }
#game-root .physique-refinement-row .physique-visual-icon { grid-row:auto; width:72px; height:72px; }
#game-root .physique-refinement-name { font-size:21px; }
#game-root .spirit-beast-profile { padding:14px!important; overflow:visible!important; grid-template-columns:145px minmax(0,1fr)!important; gap:16px!important; }
#game-root .spirit-beast-profile :is(dl,dd,dt) { margin:0; padding:0; }
#game-root .spirit-beast-profile dl { display:grid!important; grid-template-columns:44px minmax(0,1fr); gap:13px 7px; background:none!important; font-size:16px; }
#game-root .spirit-beast-profile dl > div { display:contents!important; }
#game-root .spirit-beast-profile dl dt { color:#4c6557; }
#game-root .spirit-beast-profile dl dd { color:#213f39; background:none!important; }
#game-root .spirit-beast-profile h3 { font-size:23px; margin:0 0 18px; text-align:left; background:none!important; }
#game-root .spirit-beast-attribute-grid { grid-template-columns:repeat(3,minmax(0,1fr))!important; }
#game-root .spirit-beast-attribute-grid > div { min-height:57px; border-right:1px solid #9aae96!important; border-bottom:1px solid #9aae96!important; }
#game-root .spirit-beast-attribute-grid > div:nth-child(3n) { border-right:0!important; }
#game-root .spirit-beast-attribute-grid > div:nth-child(n+7) { border-bottom:0!important; }
#game-root .dungeon-card button:not(:disabled) { background:#24575a!important; color:#fff1cd!important; }
#game-root .artifact-compact-heading .artifact-compact-title { margin:0; }
#game-root .artifact-compact-heading p { margin:0; }
#game-root .game-header h1 { font:32px/38px KaiTi,STKaiti,SimSun,serif; }
#game-root .feature-page-heading { grid-template-columns:88px minmax(0,1fr) 88px!important; align-items:center; }
#game-root .feature-page-heading :is(.crafting-rules-button,.page-back-button,.companion-help-button) { width:88px!important; min-width:0; padding:6px 4px!important; min-height:36px; white-space:nowrap!important; }
#game-root .page-panel .secondary-button:not(:disabled),#game-root dialog .secondary-button:not(:disabled) { background:linear-gradient(#d0d7c1,#b4c7b4)!important; border-color:#8a9f86; box-shadow:none!important; }
#game-root .spirit-beast-summary,#game-root .spirit-beast-summary>* { background:none!important; box-shadow:none!important; }
#game-root .spirit-beast-summary dl { margin-top:10px; }
#game-root .spirit-beast-portrait { background:#c8d2bc!important; }
#game-root .artifact-compact-info>.artifact-compact-heading { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin:0 0 12px; }
#game-root .artifact-compact-heading .artifact-compact-title { margin:0; font-size:24px; }
#game-root .artifact-compact-heading .artifact-compact-stage { margin:0; font-size:15px; }
#game-root .artifact-attribute-rows .artifact-attribute-speed { border:0; margin:0; padding:0; text-align:left; font-size:16px; }
#game-root .artifact-attributes-panel { border:0; padding-top:0; }
#game-root .physique-card__effect { min-width:0; }
#game-root .physique-card__effect ul { font-size:16px!important; }
#game-root .physique-visual-icon { display:block; padding:5px; }
#game-root .physique-visual-icon>span { display:block; width:100%; height:100%; background-repeat:no-repeat; }
#game-root .physique-visual-icon>img { display:block; width:100%; height:100%; object-fit:contain; }
#game-root .physique-visual-icon { background-color:#d0d7bf!important; }
#game-root .spirit-beast-summary dl,#game-root .spirit-beast-summary dl>* { font-size:16px!important; }
#game-root .spirit-beast-actions button { font-size:18px!important; }
#game-root .page-panel:not(.cultivate-panel) { background-image:url('../assets/images/themes/jade-v20/page-ornament.svg'),linear-gradient(145deg,#bfccb9,#abc0b0)!important; background-size:480px 170px,100% 100%!important; background-repeat:no-repeat!important; background-position:center bottom,center!important; }
/* Second review: line-separated portrait details, without row background plates. */
#game-root .spirit-beast-summary dl { display:block!important; margin-top:0; }
#game-root .spirit-beast-summary dl > div { display:grid!important; grid-template-columns:40px minmax(0,1fr); gap:8px; min-height:43px; align-items:center; border:0!important; border-bottom:1px solid #849c8799!important; background:none!important; box-shadow:none!important; }
#game-root .spirit-beast-summary h3 { margin-bottom:5px; padding-bottom:10px; border-bottom:1px solid #849c8799; }
#game-root :is(.companion-current-copy,.companion-current-copy h3,.companion-current-copy .companion-info-row) { background:none!important; box-shadow:none!important; }
#game-root .companion-current-copy h3 { margin:0; padding:3px 0 10px; border-bottom:1px solid #849c8799; }
#game-root .companion-current-copy .companion-info-row { display:grid; grid-template-columns:66px minmax(0,1fr); gap:8px; align-items:center; min-height:40px; margin:0; padding:7px 0; border:0!important; border-bottom:1px solid #849c8799!important; font-size:15px; line-height:24px; }
#game-root .companion-info-label { color:#4c6557; }
#game-root .companion-info-value { color:#213f39; }
#game-root .companion-cultivation-progress { margin-top:9px; }
#game-root .dungeon-card .dungeon-card__actions button { font:16px/22px KaiTi,STKaiti,SimSun,serif!important; white-space:nowrap!important; padding:6px 7px!important; min-width:0; letter-spacing:0; }
#game-root .dungeon-card .dungeon-card__actions button:not(:disabled) { background:#24575a!important; color:#fff1cd!important; }
#game-root .kungfu-card__milestone { font-size:14px!important; line-height:1.65; padding-left:9px; margin:6px 0; color:#526258!important; background:none!important; }
#game-root .kungfu-card__milestone[data-unlocked="true"] { color:#865a10!important; font-weight:600; border-left:2px solid #b58d3f; padding-left:7px; text-shadow:0 1px 0 #eee1bd55; }
#game-root .kungfu-card__milestone[data-unlocked="false"] { color:#526258!important; font-weight:400; }
#game-root .newcomer-task-row { grid-template-columns:minmax(0,1fr) auto 66px; gap:6px; }
#game-root .newcomer-task-row .newcomer-claim-button { width:66px; min-width:66px; padding:5px 4px; font-size:16px!important; white-space:nowrap; }
#game-root .newcomer-task-copy strong { font-size:14px; }
#game-root .newcomer-task-copy small,#game-root .newcomer-task-progress { font-size:12px; }


#game-root[data-active-page="cultivate"] .cultivate-entry-row {
  top:calc(var(--game-base-height) - 265px);
  grid-auto-rows:44px;
  row-gap:14px;
  column-gap:5px;
  max-height:160px;
}
#game-root[data-active-page="cultivate"] .cultivate-info-panel {
  background-size:364px calc(100% - 55px);
  background-position:center top;
  background-repeat:no-repeat;
}
#game-root[data-active-page="cultivate"] .cultivate-info-panel > .cultivation-progress-block,
#game-root[data-active-page="cultivate"] .cultivate-info-panel > .cultivate-compact-row {
  width:340px!important;
  max-width:100%;
  margin-left:auto;
  margin-right:auto;
}


#game-root[data-active-page="cultivate"] .cultivate-info-panel {
  background-size:324px calc(100% - 55px);
}
#game-root[data-active-page="cultivate"] .cultivate-info-panel > .cultivation-progress-block,
#game-root[data-active-page="cultivate"] .cultivate-info-panel > .cultivate-compact-row {
  width:300px!important;
}
#game-root[data-active-page="cultivate"] .breakthrough-actions {
  width:300px;
  max-width:100%;
  margin-left:auto;
  margin-right:auto;
  gap:16px;
}
#game-root[data-active-page="cultivate"] .breakthrough-action-button:is(:enabled,:disabled) {
  position:relative;
  height:55px;
  min-height:55px;
  background:linear-gradient(120deg,#bacbb8f5,#a2beb0f5)!important;
  color:#284e51!important;
  border:1px solid #a5bea6!important;
  border-radius:3px;
  box-shadow:inset 0 1px #f5efdc99,0 1px 2px #3633271a!important;
  opacity:1!important;
  filter:none!important;
  padding:5px 3px;
}
#game-root[data-active-page="cultivate"] .breakthrough-action-button:is(:enabled,:disabled)::after {
  content:""!important;
  position:absolute;
  inset:3px;
  width:auto;
  height:auto;
  border:1px solid #736d5875;
  border-radius:2px;
  background-image:var(--silk-corner-0),var(--silk-corner-1),var(--silk-corner-2),var(--silk-corner-3),var(--silk-paper-grain);
  background-position:left top,right top,right bottom,left bottom,center;
  background-size:10px 10px,10px 10px,10px 10px,10px 10px,120px 120px;
  background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,repeat;
  box-shadow:0 0 0 1px #f1ead45c;
  pointer-events:none;
  opacity:.78;
}
#game-root[data-active-page="cultivate"] .breakthrough-action-button strong {
  font:600 22px/26px KaiTi,STKaiti,SimSun,serif;
  color:inherit;
}
#game-root[data-active-page="cultivate"] .breakthrough-action-button small {
  color:#52695e;
}


#game-root[data-active-page="cultivate"] .breakthrough-actions:not(.is-guaranteed) {
  width:316px;
  gap:32px;
}
