.hamster-portrait{background:radial-gradient(ellipse at 50% 65%,#3b5551,#172c2e 75%)!important;isolation:isolate}
.hamster-portrait img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important;transform:none!important}
model-viewer{display:block;width:100%;height:100%;--poster-color:transparent;touch-action:pan-y}
.model-loading{font-size:12px;color:#dec897;display:grid;place-items:center;height:100%;padding:15px;text-align:center}
.model-poster{position:absolute;inset:0;pointer-events:none}.model-poster .model-loading{position:absolute;inset:auto 5% 3%;height:auto;padding:5px;font-size:10px;background:#142a2cbb;border-radius:20px}.model-load-notice{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border:1px solid #b39a63;color:#e9d9ae}.model-load-notice button{background:#e2c882;color:#172627;border:0;border-radius:6px;padding:12px;cursor:pointer;font:inherit}
.ending-card{margin:24px 0;padding:32px;border:1px solid #d9bd7f;background:radial-gradient(ellipse at top,#b8994b22,#142d2f);text-align:center}.ending-card h2{font-family:var(--serif);font-size:30px;font-weight:400;margin:15px 0;color:#f0d99b}.ending-card p:not(.eyebrow){max-width:650px;margin:0 auto 22px;line-height:2;font-size:13px;color:#bacaad}
body[data-path="arcane"] .impact:before{background:linear-gradient(90deg,transparent,#85c4ed,transparent);height:5px}body[data-path="body"] .impact:before{background:linear-gradient(90deg,transparent,#dab174,transparent);height:8px}body[data-path="demon"] .impact:before{background:linear-gradient(90deg,transparent,#ca9bde,transparent);height:5px}
.guide-select{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.idle-panel{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:24px 30px;margin:0 0 26px;background:linear-gradient(110deg,#1e3933,#14272a);border:1px solid #a9bb8640;border-radius:14px}.idle-panel h2{font-family:var(--serif);font-size:30px;color:#eee0ba;font-weight:400;margin:8px 0}.idle-panel p:not(.eyebrow){font-size:13px;line-height:1.7;color:#b6c9bf;max-width:520px}.idle-metrics{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-content:center}.idle-metrics span{display:block;font-size:11px;color:#adbbb3;margin-bottom:8px}.idle-metrics strong{font-size:27px;color:#dccc91;font-weight:500}.idle-metrics small{grid-column:1/-1;font-size:10px;color:#96aea0;line-height:1.7}@media(max-width:780px){.idle-panel{grid-template-columns:1fr;padding:22px;gap:20px}.idle-panel h2{font-size:27px}.idle-metrics strong{font-size:25px}}
.appearance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.appearance-grid .portrait{height:200px;aspect-ratio:1}
.appearance-grid small{display:block;font-size:11px;color:#bdcbae;padding-bottom:14px}
.cult-person{width:260px;height:300px;left:3%;border-radius:38% 38% 8px 8px}
.battle-avatar{width:250px;height:255px;left:7%}
.battle-actions{width:53%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.battle-actions strong{font-size:18px}.battle-actions .path-skill{border-color:#d6b581;background:#b79b611a}
.battle-actions button:disabled{opacity:.4;cursor:not-allowed}
.path-note{font-size:12px;padding:14px 20px;color:#ddc99f;border:1px solid var(--line);border-top:0}
.setup-guide{grid-template-columns:150px 1fr}.setup-guide>.portrait{width:150px;height:180px}
@media(max-width:1200px){.cult-person{width:210px;height:270px}.battle-controls{flex-direction:column;align-items:stretch}.battle-actions{width:100%}}
@media(max-width:1000px){.cult-person{width:210px;height:260px;bottom:125px}}
@media(max-width:780px){.cult-person{width:52%;height:260px;left:1%;bottom:65px}.battle-avatar{width:43%;height:200px;left:2%}.setup-guide{grid-template-columns:130px 1fr}.setup-guide>.portrait{width:130px;height:170px}.battle-actions strong{font-size:17px}.battle-actions small{font-size:9px}.battle-actions{gap:7px}.appearance-grid .portrait{height:auto;min-height:150px}}
.hamster-portrait.model-error:after{content:none}
.model-error .model-loading{font-size:0}
.model-error .model-loading:after{content:'Preview · animation unavailable';font-size:10px}
html[lang="zh-Hant"] .model-error .model-loading:after{content:'預覽圖 · 動畫暫時無法載入'}
