/* The approved sixth home composition. Secondary pages keep their existing layout. */
#game-root { --jade-world:url('../assets/images/themes/jade-v18/scene.webp'); background-image:var(--jade-world); background-position:center; background-size:cover; }
#game-root .game-header { color:#ebd19b; background:linear-gradient(100deg,#143a40f5,#194a4ef0); border-color:#bd9d5e; }
#game-root .game-header h1 { color:#ecd09a; font-family:KaiTi,STKaiti,SimSun,serif; }
#game-root .game-header__subtitle { color:#c9ceb4; }
#game-root .bottom-nav { background:linear-gradient(#285359f5,#153b41fa); border-color:#bca16c; }
#game-root .bottom-nav button { color:#dce2ca; background:transparent; font-family:KaiTi,STKaiti,SimSun,serif; }
#game-root .bottom-nav button.is-active { color:#ffe0a2; background:linear-gradient(#4e797640,#123d4500); box-shadow:inset 0 2px #d8b567; }
#game-root .bottom-nav button:disabled { color:#9aa9a3; }
#game-root[data-active-page="cultivate"] #app { background:transparent; }
#game-root[data-active-page="cultivate"] .game-header { height:46px; min-height:46px; padding:3px 14px; }
#game-root[data-active-page="cultivate"] .game-header h1 { font-size:32px; }
#game-root[data-active-page="cultivate"] .game-content { position:static; padding:0; overflow:hidden; }
#game-root[data-active-page="cultivate"] .player-interface { display:block; min-height:0; }
#game-root[data-active-page="cultivate"] .role-card--compact { position:absolute; z-index:2; top:59px; left:12px; right:12px; height:81px; padding:0; border:0; background:none; box-shadow:none; }
#game-root[data-active-page="cultivate"] .role-card--compact::before,
#game-root[data-active-page="cultivate"] .role-card--compact::after { content:none; }
#game-root[data-active-page="cultivate"] .player-identity { display:flex; gap:9px; align-items:flex-start; }
#game-root[data-active-page="cultivate"] .gender-portrait--compact { display:grid; position:relative; width:58px; height:58px; min-width:58px; border:2px solid #d8bd7d; border-radius:50%; background:radial-gradient(#68b7a3,#244f58); color:#efdab0; overflow:hidden; }
#game-root[data-active-page="cultivate"] .gender-portrait--compact img { width:180px; height:160px; max-width:none; object-fit:contain; position:absolute; top:0; left:-62px; }
#game-root[data-active-page="cultivate"] .player-summary { flex:1; min-width:0; padding:0; display:block; }
#game-root[data-active-page="cultivate"] .player-summary__header { display:flex; align-items:flex-start; justify-content:space-between; }
#game-root[data-active-page="cultivate"] .player-summary__identity { display:flex; flex-direction:column; align-items:flex-start; gap:2px; }
#game-root[data-active-page="cultivate"] .player-summary__identity strong { font:23px KaiTi,STKaiti,SimSun,serif; color:#f5e9c9; text-shadow:0 1px 3px #142e34; }
#game-root[data-active-page="cultivate"] .player-summary__identity span,
#game-root[data-active-page="cultivate"] .player-character-age,
#game-root[data-active-page="cultivate"] .player-character-age b { color:#eee5c8; font-size:14px; text-shadow:0 1px 3px #142e34; }
#game-root[data-active-page="cultivate"] .player-character-age { margin:3px 0 0; }
#game-root[data-active-page="cultivate"] .player-currencies { display:flex; position:absolute; top:65px; right:0; gap:7px; max-width:100%; margin:0; }
#game-root[data-active-page="cultivate"] .player-currencies span { background:#123d43eb; border:1px solid #91ac9c; color:#ecebd7; border-radius:18px; padding:4px 10px; white-space:nowrap; font-size:14px; min-width:0; }
#game-root[data-active-page="cultivate"] .player-currencies b { font-weight:400; color:#f7e9bd; font-variant-numeric:tabular-nums; }
#game-root[data-active-page="cultivate"] .cultivate-panel:not([hidden]) { position:absolute; inset:0 0 71px; padding:0; margin:0; border:0; display:block; overflow:visible; background:none; box-shadow:none; }
#game-root[data-active-page="cultivate"] .cultivate-panel::before,
#game-root[data-active-page="cultivate"] .cultivate-panel::after { content:none; }
#game-root[data-active-page="cultivate"] .cultivate-overview { position:static; display:block; height:0; min-height:0; max-height:none; padding:0; }
#game-root[data-active-page="cultivate"] .cultivate-character-stage { position:absolute; left:113.333px; top:263.333px; width:253.334px; height:226.667px; aspect-ratio:auto; border:0; background:none; box-shadow:none; overflow:visible; mask:none; -webkit-mask:none; }
#game-root .cultivate-character-stage [data-role="gender-image"]:not([hidden]) { display:block; position:absolute; inset:0; width:100%; height:100%; object-fit:contain; object-position:center bottom; }
#game-root .cultivate-character-stage [data-role="gender-placeholder"] { display:none; }
#game-root .cultivate-character-stage::before { content:""; position:absolute; bottom:3%; left:12%; width:76%; height:7%; background:radial-gradient(ellipse,#1e34389c,transparent 68%); }
.meditation-motion { position:absolute; inset:0; pointer-events:none; }
.meditation-motion img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; object-position:center bottom; }
#game-root .cultivate-character-stage.has-meditation .meditation-base { mask-image:linear-gradient(#000 43%,transparent 45%),linear-gradient(90deg,transparent 20%,#000 21%,#000 79%,transparent 80%); mask-composite:add; }
.meditation-sleeve-left { mask-image:linear-gradient(transparent 43%,#000 45%),linear-gradient(90deg,#000 20%,transparent 21%); mask-composite:intersect; transform-origin:26% 53%; animation:jade-cloth-left 4.4s ease-in-out infinite; }
.meditation-sleeve-right { mask-image:linear-gradient(transparent 43%,#000 45%),linear-gradient(90deg,transparent 79%,#000 80%); mask-composite:intersect; transform-origin:74% 53%; animation:jade-cloth-right 4.8s ease-in-out infinite; }
.meditation-motion svg { width:100%; height:100%; overflow:visible; position:absolute; inset:0; }
.meditation-flow { fill:none; stroke:#d1f8df; stroke-width:2.3; stroke-linecap:round; stroke-dasharray:28 225; animation:jade-inflow 3.6s linear infinite; }
.meditation-flow:nth-child(even) { stroke:#f8de91; animation-delay:-1.8s; }
.meditation-glow { fill:none; stroke:#c5f8d787; stroke-width:6; stroke-dasharray:28 225; animation:jade-inflow 3.6s linear infinite; }
@keyframes jade-cloth-left { 0%,100%{transform:rotate(-.65deg) translateX(-.7px)}50%{transform:rotate(.7deg) translateX(.7px)} }
@keyframes jade-cloth-right { 0%,100%{transform:rotate(.65deg) translateX(.7px)}50%{transform:rotate(-.7deg) translateX(-.7px)} }
@keyframes jade-inflow { from{stroke-dashoffset:253}to{stroke-dashoffset:0} }
#game-root[data-active-page="cultivate"] .cultivate-info-panel { position:absolute; left:28px; right:28px; top:568px; bottom:auto; width:auto; height:auto; padding:8px 16px 0; display:flex; flex-direction:column; gap:0; border:0; border-radius:0; box-shadow:none; background:linear-gradient(90deg,transparent,#14343bdf 10%,#14343bdf 90%,transparent); overflow:visible; text-shadow:0 1px 2px #102a31; }
#game-root[data-active-page="cultivate"] .cultivate-info-panel::before,
#game-root[data-active-page="cultivate"] .cultivate-info-panel::after { content:none; }
#game-root[data-active-page="cultivate"] .cultivate-info-panel > .cultivation-progress-block { background:none; padding:0; margin:0; border:0; box-shadow:none; }
#game-root[data-active-page="cultivate"] .cultivate-info-panel > .cultivation-progress-block:first-child { display:flex; flex-direction:column-reverse; width:100%; }
#game-root[data-active-page="cultivate"] .cultivate-info-panel .progress-label { font-size:16px; line-height:23px; margin:0; display:flex; justify-content:space-between; gap:6px; }
#game-root[data-active-page="cultivate"] .cultivate-info-panel .progress-label span,
#game-root[data-active-page="cultivate"] .cultivate-speed-label { color:#d9dfce; font:16px/23px KaiTi,STKaiti,SimSun,serif; white-space:nowrap; }
#game-root[data-active-page="cultivate"] .cultivate-info-panel .progress-label strong,
#game-root[data-active-page="cultivate"] .cultivate-info-panel .progress-label b { font:400 17px/23px KaiTi,STKaiti,SimSun,serif; color:#fff0ce; white-space:nowrap; }
#game-root[data-active-page="cultivate"] .cultivate-info-panel .cultivate-compact-row { flex-direction:row; display:flex; justify-content:space-between; width:100%; margin:0; padding:0; border:0; gap:4px; background:none; box-shadow:none; }
#game-root[data-active-page="cultivate"] .cultivate-info-panel [data-role="cultivate-speed"] { width:auto; font:400 17px/23px KaiTi,STKaiti,SimSun,serif; color:#efdba4; text-align:right; }
#game-root[data-active-page="cultivate"] .cultivate-speed-info { width:17px; height:17px; padding:0; font:12px SimSun,serif; line-height:15px; background:none!important; color:#e3d7a7!important; border:1px solid #b7b690; }
#game-root[data-active-page="cultivate"] .cultivation-progress-block progress { width:100%; height:6px; margin:0 0 8px; border:1px solid #b6b990; border-radius:5px; overflow:hidden; background:#24484e; }
#game-root[data-active-page="cultivate"] .cultivation-progress-block progress::-webkit-progress-bar { background:#24484e; }
#game-root[data-active-page="cultivate"] .cultivation-progress-block progress::-webkit-progress-value { background:linear-gradient(90deg,#55b49d,#d8eab2); }
#game-root[data-active-page="cultivate"] .cultivation-progress-block progress::-moz-progress-bar { background:linear-gradient(90deg,#55b49d,#d8eab2); }
#game-root[data-active-page="cultivate"] .qi-sea-progress-block progress { height:2px; margin:2px 0 9px; border:0; }
#game-root[data-active-page="cultivate"] .breakthrough-actions { display:grid; grid-template-columns:1fr 1fr; gap:20px; padding:0; margin:0 -3px; }
#game-root[data-active-page="cultivate"] .breakthrough-action-button { height:55px; min-height:55px; border-radius:6px; padding:5px 3px; font-family:KaiTi,STKaiti,SimSun,serif; text-shadow:none; }
#game-root[data-active-page="cultivate"] .breakthrough-action-button:not(:disabled) { background:linear-gradient(#efd496,#cea251)!important; border-color:#e5c176!important; color:#493721!important; }
#game-root[data-active-page="cultivate"] .breakthrough-action-button strong { font:600 24px/26px KaiTi,STKaiti,SimSun,serif; color:inherit; letter-spacing:1px; }
#game-root[data-active-page="cultivate"] .breakthrough-action-button small { font:13px/15px KaiTi,STKaiti,SimSun,serif; color:inherit; margin-top:2px; }
#game-root[data-active-page="cultivate"] .manual-cultivation-button { position:absolute; top:514px; left:140px; width:200px; min-height:37px; padding:5px 10px; font-family:KaiTi,STKaiti,SimSun,serif; }
#game-root[data-active-page="cultivate"] .cultivate-entry-row { position:absolute; left:16px; right:16px; top:758px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); grid-auto-rows:46px; gap:5px; max-height:150px; overflow:auto; padding:0; margin:0; scrollbar-width:thin; }
#game-root[data-active-page="cultivate"] .cultivate-entry-row .cultivate-entry-button { min-height:46px; height:46px; display:flex; flex-direction:row; align-items:center; justify-content:center; gap:4px; padding:3px; background:linear-gradient(125deg,#e9ebd5ed,#bed7cce8)!important; border-color:#a5bea6; color:#284e51; }
#game-root[data-active-page="cultivate"] .cultivate-entry-row .cultivate-entry-button::before { width:25px; height:27px; margin:0; flex-shrink:0; }
#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:17px KaiTi,STKaiti,SimSun,serif; color:#284e51; white-space:nowrap; }
#game-root[data-active-page="cultivate"] .cultivate-entry-row .cultivate-entry-button[hidden] { display:none; }
#game-root[data-active-page="cultivate"] .cultivate-chat-entry { position:absolute; top:917px; left:16px; right:16px; width:auto; height:30px; min-height:30px; padding:3px 10px; margin:0; background:linear-gradient(#2b6268e8,#173e48f5)!important; color:#efdfb2!important; font:16px KaiTi,STKaiti,SimSun,serif; }
#game-root:not([data-active-page="cultivate"]) .meditation-motion,
#game-root[data-visual-paused="true"] .meditation-motion { visibility:hidden; }
@supports not (mask-composite:intersect) { #game-root .cultivate-character-stage.has-meditation .meditation-base { mask:none; }.meditation-motion img { display:none; } }
@media(prefers-reduced-motion:reduce) { .meditation-motion * { animation:none!important; } }
/* Clear only the old home portrait/currency ornament overlays. */
#game-root[data-active-page="cultivate"] .cultivate-panel:not([hidden]) { height:auto; min-height:0; }
#game-root[data-active-page="cultivate"] .cultivate-entry-row { width:auto; }
#game-root[data-active-page="cultivate"] .cultivate-character-stage::after,
#game-root[data-active-page="cultivate"] .player-currencies span::after,
#game-root[data-active-page="cultivate"] .breakthrough-action-button::after { content:none; }
#game-root[data-active-page="cultivate"] .player-currencies span { background:#123d43eb!important; color:#ecebd7!important; }
#game-root[data-active-page="cultivate"] .player-currencies b { color:#f7e9bd!important; }
#game-root[data-active-page="cultivate"] .breakthrough-action-button:disabled { background:linear-gradient(#c5c5ad,#a3af9b)!important; color:#465850!important; border-color:#97ab9b!important; opacity:1!important; }
#game-root:not([data-active-page="cultivate"]) .meditation-motion * { animation-play-state:paused; }
body, #app-viewport { background-color:#10272b; }
#game-root:not([data-active-page="cultivate"]) .game-header { height:52px; min-height:52px; }
#game-root[data-active-page="cultivate"] .breakthrough-actions.is-guaranteed { grid-template-columns:minmax(0,1fr); }
#game-root[data-active-page="cultivate"] .cultivate-entry-red-dot { top:3px; right:3px; width:8px; height:8px; border:1px solid #fff0cb; }
