/* 開局來源與首次轉生的新增元件；不重寫導航、HUD或既有卡片。 */
#app .profile-route{padding:11px 12px;margin:0 0 14px;border:1px solid #b6d6e5;border-radius:5px;background:#edf8fd;color:#183f65;font-size:12px;line-height:1.7}
#app .profile-route strong{font-size:14px}#app .profile-route p{margin:5px 0}#app .profile-route nav{display:flex;flex-wrap:wrap;gap:8px;margin:7px 0}#app .profile-route a{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px 10px;border:1px solid #98c8e2;border-radius:4px;background:#fffdf5;color:#174f7b;text-decoration:underline;overflow-wrap:anywhere;line-height:1.5}#app .profile-route small{display:block;line-height:1.6}
#app .progression-card{scroll-margin-top:12px}#app .progression-card button{min-width:44px;min-height:44px;white-space:normal;overflow-wrap:anywhere}#app .progression-preview{padding:10px 0;color:#183e63;font-size:12px;line-height:1.7}#app .progression-preview dl,#app .progression-dialog dl{display:grid;gap:6px;margin:9px 0}#app .progression-preview dl>div,#app .progression-dialog dl>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:7px;border:1px solid #c7dde7;border-radius:3px;background:#f0f8fc}#app .progression-preview dd,#app .progression-dialog dd{margin:0;font-weight:800;overflow-wrap:anywhere}
#app .progression-dialog{max-width:min(480px,calc(100vw - 24px));max-height:calc(100dvh - 32px);padding:16px;border:2px solid #6abfe5;border-radius:8px;background:#fffdf3;color:#12385d;box-shadow:0 6px 26px #0635504d;overflow:auto;font-size:13px;line-height:1.7}#app .progression-dialog::backdrop{background:#082d5266}#app .progression-dialog h2{font-size:20px;line-height:1.5;margin:0 0 9px;overflow-wrap:anywhere}#app .progression-dialog h3{margin-top:12px;line-height:1.6}#app .progression-dialog p{margin:8px 0;overflow-wrap:anywhere}#app .progression-dialog ul{margin:8px 0;padding-left:22px}#app .progression-dialog li{overflow-wrap:anywhere}#app .progression-dialog small{display:block;overflow-wrap:anywhere;line-height:1.65}#app .progression-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}#app .progression-actions button{flex:1 1 110px;min-width:44px;min-height:44px;padding:10px;white-space:normal;overflow-wrap:anywhere;line-height:1.5}#app .progression-dialog button:focus-visible,#app .profile-route a:focus-visible{outline:3px solid #034f97;outline-offset:3px}

/* 來源開局的獨立入口；原圖完整 contain，不裁切或放大臉部。 */
#app .source-opening{margin-top:14px;overflow-wrap:anywhere}
#app .source-opening h1{font-size:23px;line-height:1.4;margin:0 0 12px}
#app .source-opening p{line-height:1.7}
#app .source-opening-pet{display:block;width:180px;height:180px;max-width:100%;object-fit:contain;margin:10px auto}
#app .source-opening fieldset{display:flex;flex-wrap:wrap;gap:8px;min-width:0;margin:12px 0;padding:12px;border:1px solid #b6d6e5;border-radius:5px}
#app .source-opening legend{padding:0 5px;font-size:14px;font-weight:800;line-height:1.6}
#app .source-sex-choice{display:flex;align-items:center;gap:10px;flex:1 1 100px;min-width:44px;min-height:44px;padding:8px;border:1px solid #98c8e2;border-radius:4px;background:#fffdf5;color:#183f65;line-height:1.6;cursor:pointer}
#app .source-sex-choice input[type=radio]{width:24px;height:24px;min-width:24px;flex:0 0 24px;margin:0;accent-color:#175e9e}
#app .source-sex-choice:has(input:checked){background:#e1f3fd;box-shadow:inset 0 0 0 1px #175e9e}
#app .source-sex-choice:focus-within{outline:3px solid #034f97;outline-offset:3px}
#app .source-opening #source-create{width:100%;min-width:44px;min-height:44px;white-space:normal;overflow-wrap:anywhere;line-height:1.5}
#app .source-opening a{display:inline-flex;align-items:center;min-width:44px;min-height:44px;line-height:1.6;overflow-wrap:anywhere}
#app .source-opening a:focus-visible{outline:3px solid #034f97;outline-offset:3px}
#app .source-opening .stats>div{min-width:0}
#app .source-opening .stats dd{overflow-wrap:anywhere}
@media(max-width:360px){#app .source-opening h1{font-size:20px}#app .source-opening-pet{width:160px;height:160px}}
