/* v47 角色卡版型重整：每個版型有自己的資訊區，標籤、職業、QR 與照片主體不再互相重疊。
   只用 CSS 調整位置；玩家用「移動標籤」拖曳過的位置（行內樣式）仍然優先。 */
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode){--lay-x:24px;--lay-y:22px;--lay-panel:rgba(6,13,26,.93);--lay-gold:#e5cf93}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).ornate-frame{--lay-x:var(--frame-safe-x);--lay-y:var(--frame-safe-top)}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode){--lay-tags-top:var(--lay-y)}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).ornate-frame:not(.portrait-mode){--lay-tags-top:42px}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=social] .watermark{z-index:6}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode) #second-card-img:not([src]),#capture-target#capture-target:not(.guild-mode):not(.glamour-mode) #second-card-img[src=""]{display:none}

/* 原版經典 classic：維持原樣，不做任何調整。 */

/* ── 極簡攝影 photo：只留小字署名，照片就是主角 ── */
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=photo] .card-content{justify-content:flex-start;align-items:flex-end}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=photo] .text-group{transform:scale(.78);transform-origin:left bottom;align-items:flex-start;text-align:left}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=photo] .char-name{letter-spacing:.04em}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=photo] #card-extra-info{max-width:520px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).portrait-mode[data-layout=photo] .card-content{left:var(--lay-x);right:var(--lay-x);flex-direction:row;align-items:flex-end;text-align:left;bottom:calc(var(--lay-y) + 18px)}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).portrait-mode[data-layout=photo] .text-group{align-items:flex-start;margin-bottom:0}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).portrait-mode[data-layout=photo] .sub-info{justify-content:flex-start}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).portrait-mode[data-layout=photo] .marriage-display{text-align:left}

/* ── 冒險者證件 identity：左照片右資料；標籤固定在資料欄頂端兩行內，不會壓到名字 ── */
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=identity]{background:linear-gradient(135deg,#0d1a2b 0%,#070d17 60%,#0b1422 100%)}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=identity] .card-overlay{opacity:.55}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=identity] .image-container{left:var(--lay-x);top:var(--lay-y);width:40%;height:calc(100% - var(--lay-y) * 2);border:0;border-radius:6px;background:#000;box-shadow:0 0 0 5px rgba(0,0,0,.35)}
/* 照片外框畫在照片上層，縮放預覽或匯出時照片邊緣不會露出一條底色細線 */
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=identity] .image-container::after{content:'';position:absolute;inset:0;border:1px solid rgba(229,207,147,.6);border-radius:inherit;pointer-events:none;z-index:2}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=identity]:not(.ornate-frame) .watermark{top:auto;left:auto;right:var(--lay-x);bottom:8px;font-size:.62em}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=identity] .tags-container{left:calc(40% + var(--lay-x) + 24px);right:var(--lay-x);top:var(--lay-tags-top);width:auto;max-width:none;align-items:flex-start}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=identity].has-qr .tags-container{right:calc(var(--lay-x) + 84px)}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=identity] .tag-row{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:6px;width:100%}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=identity] .playstyle-tag{font-size:11px;min-height:28px;padding:3px 9px}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=identity] .card-content{left:calc(40% + var(--lay-x) + 24px);right:var(--lay-x);top:calc(var(--lay-tags-top) + var(--lay-tags-h,66px) + 14px);bottom:calc(var(--lay-y) + 12px);flex-direction:column;align-items:flex-start;justify-content:space-between;padding-top:10px;border-top:1px solid rgba(229,207,147,.35)}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=identity] .job-icons-container{justify-content:flex-start;max-width:100%}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).portrait-mode[data-layout=identity] .image-container{left:var(--lay-x);right:var(--lay-x);top:var(--lay-y);width:auto;height:44%;border:0;border-radius:6px;background:#000;box-shadow:0 0 0 5px rgba(0,0,0,.35)}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).portrait-mode[data-layout=identity] .tags-container{top:calc(var(--lay-y) + 10px);left:calc(var(--lay-x) + 10px);right:calc(var(--lay-x) + 10px);max-width:none}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).portrait-mode[data-layout=identity] .card-content{left:var(--lay-x);right:var(--lay-x);top:calc(44% + var(--lay-y) + 22px);bottom:calc(var(--lay-y) + 22px);justify-content:space-between;align-items:center}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).portrait-mode[data-layout=identity] .text-group{margin-bottom:0}

#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).portrait-mode[data-layout=identity].has-qr .tags-container{right:calc(var(--lay-x) + 94px)}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=identity].ornate-frame .playstyle-tag,#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=social].ornate-frame .playstyle-tag{font-size:10px;min-height:25px;padding:2px 7px;gap:4px;letter-spacing:0}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=identity].ornate-frame .badge-icon,#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=social].ornate-frame .badge-icon{width:13px;height:13px;padding:1px}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=identity].ornate-frame .tag-row,#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=social].ornate-frame .tag-row{gap:4px}
/* ── 交友名片 social：左側（直式為下方）整片資訊面板，照片主體留在另一側；標籤在面板最上方 ── */
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=social] .card-content{left:0;top:0;bottom:0;right:auto;width:50%;box-sizing:border-box;padding:calc(var(--lay-y) + 14px + var(--lay-tags-h,66px) + 14px) 22px var(--lay-y) var(--lay-x);background:linear-gradient(90deg,var(--lay-panel) 0%,rgba(6,13,26,.86) 74%,rgba(6,13,26,0) 100%);border:0;border-radius:0;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:12px}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=social] .text-group{max-width:100%}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=social] .job-icons-container{justify-content:flex-start;max-width:100%}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=social]:not(.ornate-frame) .watermark{top:auto;left:auto;right:var(--lay-x);bottom:8px;font-size:.62em}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=social] .tags-container{left:var(--lay-x);right:auto;top:calc(var(--lay-y) + 14px);bottom:auto;max-width:calc(50% - var(--lay-x) - 22px);align-items:flex-start}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=social] .tags-container,#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=raid] .tags-container{z-index:5}
/* 金色裝飾線只屬於原版經典；切換卡片模式時程式會把它設成顯示（行內樣式），所以這裡要用 !important 蓋過 */
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=photo] .deco-line,#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=identity] .deco-line,#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=social] .deco-line,#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=raid] .deco-line,#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=duo] .deco-line{display:none!important}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=social] .tag-row{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:6px}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=social] .playstyle-tag{font-size:11px;min-height:28px;padding:3px 9px}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).portrait-mode[data-layout=social] .card-content{left:0;right:0;bottom:0;top:auto;box-sizing:border-box;padding:46px var(--lay-x) calc(var(--lay-y) + 26px);background:linear-gradient(0deg,var(--lay-panel) 0%,rgba(6,13,26,.86) 72%,rgba(6,13,26,0) 100%);border:0;border-radius:0}

/* ── 高難招募 raid：右側招募面板，職業圖示放大；遊玩風格放左下 ── */
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=raid] .card-content{left:auto;right:0;top:0;bottom:0;width:50%;box-sizing:border-box;padding:calc(var(--lay-y) + 6px) var(--lay-x) var(--lay-y) 24px;background:linear-gradient(270deg,rgba(18,8,12,.95) 0%,rgba(18,8,12,.88) 72%,rgba(18,8,12,0) 100%);border:0;border-radius:0;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:14px}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=raid].has-qr .card-content{padding-top:calc(var(--lay-y) + 84px)}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=raid] .text-group{max-width:100%}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=raid] .job-icons-container{justify-content:flex-start;max-width:100%;margin-top:auto}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=raid] .job-icon-img{width:42px;height:42px;border:1px solid rgba(255,140,140,.45)}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=raid] .tags-container{left:var(--lay-x);right:auto;top:auto;bottom:var(--lay-y);max-width:calc(50% - var(--lay-x) - 16px);align-items:flex-start}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode):not(.portrait-mode)[data-layout=raid] .tag-row{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:6px}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode).portrait-mode[data-layout=raid] .card-content{left:0;right:0;bottom:0;top:auto;box-sizing:border-box;padding:46px var(--lay-x) calc(var(--lay-y) + 26px);background:linear-gradient(0deg,rgba(18,8,12,.95) 0%,rgba(18,8,12,.86) 72%,rgba(18,8,12,0) 100%);border:0;border-radius:0}

/* 版型小標（證件、名片、招募），用偽元素，不需要改 HTML */
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=identity] .text-group::before,#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=social] .text-group::before,#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=raid] .text-group::before{display:block;font:600 10px/1.2 'Cinzel','Noto Sans TC',sans-serif;letter-spacing:.32em;color:var(--lay-gold);text-shadow:none;margin:0 0 4px}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=identity] .text-group::before{content:'ADVENTURER LICENSE'}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=social] .text-group::before{content:'NICE TO MEET YOU'}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=raid] .text-group::before{content:'PARTY FINDER · RECRUITING';color:#ff9b9b}

/* ── 雙人紀念 duo：沒有第二張照片時不再出現破圖，下方加上柔和底色 ── */
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=duo]{background:linear-gradient(180deg,#0b1424 0%,#060a12 100%)}
#capture-target#capture-target:not(.guild-mode):not(.glamour-mode)[data-layout=duo] #second-placeholder{inset:12% 10%;display:flex;align-items:center;justify-content:center;border:1px dashed rgba(160,179,198,.45);border-radius:8px}
