/* 2026-10-24（使用者：完善守護動物，先限定角色測試）：單一可移動小視窗，不加動畫或大型圖集。 */
.guardian-launcher[hidden]{display:none!important}
.guardian-quick-panel{position:fixed;z-index:75;left:12px;top:130px;width:300px;max-width:calc(100vw - 76px);max-height:var(--floating-available-height,calc(100dvh - 80px));display:flex;flex-direction:column;box-sizing:border-box;border:2px solid #a78b56;border-radius:8px;background:linear-gradient(#222b1bf5,#10190ff5);color:#f0e3c1;box-shadow:0 4px 14px #0009;font:13px/1.5 var(--font,sans-serif);pointer-events:auto}
.guardian-quick-panel[hidden]{display:none!important}.guardian-quick-panel *{box-sizing:border-box}
.gq-handle{display:flex;align-items:center;justify-content:space-between;min-height:34px;flex:0 0 auto;padding:3px 8px;background:linear-gradient(#56452b,#322a1b);border-bottom:1px solid #a78b5677;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none;border-radius:6px 6px 0 0}
.gq-handle.dragging{cursor:grabbing}.gq-handle:focus-visible{outline:2px solid #ffe0a2}.gq-handle h2{margin:0;font:600 15px/1.4 var(--font,sans-serif)}.gq-handle small{font:11px var(--font,sans-serif);color:#cce1b9}.gq-handle button{width:29px;min-height:28px;padding:0;font-size:21px}
.gq-summary{padding:7px 9px;flex:0 0 auto}.gq-name{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:13px}.gq-name small{margin-left:auto;color:#cfcdad;font-size:11px}
.gq-bar{position:relative;height:15px;margin-top:3px;overflow:hidden;border:1px solid #665837;border-radius:3px;background:#09110a}.gq-bar i{position:absolute;inset:0 auto 0 0;background:linear-gradient(#e9665e,#9e2929)}.gq-bar.mp i{background:linear-gradient(#65b6e7,#2852a0)}.gq-bar.xp i{background:linear-gradient(#e3d279,#98802f)}.gq-bar span{position:relative;display:block;text-align:center;color:#fff;font-size:11px;line-height:13px;text-shadow:0 1px #000}
.gq-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding:0 8px 7px;flex:0 0 auto}
.guardian-quick-panel button{font-family:inherit;color:#f5e5bd;background:linear-gradient(#55452e,#30291b);border:1px solid #9b8053;border-radius:4px;cursor:pointer;min-height:29px;padding:3px 7px;font-size:12px;line-height:1.4}.guardian-quick-panel button:disabled{opacity:.45;cursor:default}.guardian-quick-panel button[aria-pressed=true]{background:#71613c;outline:1px solid #e6ca83}.gq-tabs button{padding:3px 0}
.gq-body{min-height:0;overflow:auto;padding:0 9px 8px;overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:thin}.gq-body h3{margin:9px 0 5px;font-size:13px;color:#e7d19d}.gq-row{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin:7px 0}.gq-row>button{flex:1 1 auto}.gq-field{display:flex;flex-direction:column;gap:4px;margin:5px 0}.gq-field select,.gq-field input{width:100%;min-width:0}.guardian-quick-panel input,.guardian-quick-panel select{color:#f1e6ce;background:#0d170d;border:1px solid #85704b;border-radius:3px;min-height:30px;padding:4px 6px;font:12px var(--font,sans-serif)}.gq-body input[type=number]{width:66px}.gq-note{margin:5px 0;color:#c8ceb9;font-size:12px;line-height:1.6}.gq-entry{display:flex;align-items:center;justify-content:space-between;gap:7px;padding:6px 0;border-bottom:1px solid #6d643c55}.gq-entry>span:first-child{min-width:0;flex:1;overflow-wrap:anywhere}.gq-entry small{display:block;font-size:11px;color:#bdc7ae}.gq-entry>span:last-child:not(:first-child){display:flex;gap:3px}.gq-feedback{flex:0 0 auto;padding:0 9px;margin:0 0 7px;font-size:12px;color:#ffe0a0;overflow-wrap:anywhere}.gq-feedback:empty{display:none}.guardian-launcher i{font-style:normal;font-size:20px}.guardian-preview-banner{position:fixed;left:50%;top:58px;transform:translateX(-50%);z-index:10;max-width:calc(100vw - 110px);padding:3px 9px;border:1px solid #a78b56;border-radius:4px;background:#11190de6;color:#e9e6bd;font:11px/1.5 var(--font,sans-serif);pointer-events:none}
@media(max-height:500px){.guardian-quick-panel{font-size:12px}.gq-summary{padding:4px 8px}.gq-tabs{padding-bottom:4px}.gq-handle{min-height:30px}.gq-bar{height:13px}.gq-bar span{line-height:11px;font-size:10px}.guardian-preview-banner{top:24px;left:52%;font-size:9px;max-width:45vw}}

/* 2026-10-24：明確顯示守護入口，避開功能列隱藏文字及透明字色的共用樣式。 */
body.desktop-client #function-rail>button#guardian-quick-toggle{position:relative;background:radial-gradient(circle,#344735,#101a12)!important;border:2px solid #bfa365;border-radius:50%;box-shadow:0 2px 5px #0008}
body.desktop-client #function-rail>button#guardian-quick-toggle::before,body.desktop-client #function-rail>button#guardian-quick-toggle::after{content:none}
body.desktop-client #function-rail>button#guardian-quick-toggle>span{display:block;position:static;inset:auto;width:auto;height:auto;padding:0;border:0;background:none;color:#fff1cf;font:700 12px/1 sans-serif;text-shadow:0 1px 2px #000}

/* 2026-10-24（使用者：沒有指引寵物倒下該去哪裡購買藥水）：復活流程置頂並清楚標示購買地點。 */
.gq-revive-guide{margin:4px 0 10px;padding:9px;border:1px solid #d1a461;border-radius:5px;background:#4c321e88;color:#fff0cb}.gq-revive-guide strong{display:block;color:#ffe0a0;font-size:13px}.gq-revive-guide p{margin:6px 0;font-size:12px;line-height:1.7}.gq-revive-guide>button{width:100%;min-height:36px}.gq-revive-guide small{display:block;color:#d0c6ac;font-size:11px;line-height:1.6}

/* 2026-10-24（使用者：點按鈕彈出原版感小面板）：戰鬥頁縮小，詳細功能保留在管理分頁。 */
.guardian-quick-panel{width:264px}.gq-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.guardian-quick-panel[data-gq-view=quick]{max-height:min(420px,var(--floating-available-height,calc(100dvh - 80px)))}.gq-body>[data-gq-action=skill]{display:block;width:100%;margin:5px 0;min-height:32px}
canvas.guardian-targeting{cursor:crosshair!important}
/* 2026-10-24（使用者：怪物資訊移動位置）：可拖曳資訊框，座標由既有安全邊界控制器儲存。 */
body.desktop-client #target-card.target-info-draggable{position:fixed!important;transform:none!important;pointer-events:auto!important;right:auto!important;z-index:24}
#target-card.target-info-draggable #target-name{cursor:grab;touch-action:none;padding:3px 0;outline-offset:2px}#target-card.target-info-draggable #target-name.dragging{cursor:grabbing}

/* 2026-10-24：戰鬥預設只顯示戰鬥／管理兩個入口，縮短面板；詳細分類仍從管理進入。 */
.guardian-quick-panel[data-gq-view=quick]{max-height:min(350px,var(--floating-available-height,calc(100dvh - 80px)))}.guardian-quick-panel[data-gq-view=quick] .gq-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}

/* 2026-10-24（使用者：動物叫出來也沒有新按鈕）：獨立守護按鈕放在技能列上方空白處，可從設定調整位置。 */
body.desktop-client>button#guardian-quick-toggle:not([hidden]){position:fixed;z-index:28;display:grid;place-items:center;width:54px;height:54px;min-width:54px;min-height:54px;padding:0;margin:0;border:2px solid #dfc184;border-radius:50%;background:radial-gradient(circle at 35% 25%,#556d47,#152416 72%);color:#fff5ce;font:700 15px/1.1 var(--font,sans-serif);box-shadow:0 2px 5px #000b,inset 0 0 0 3px #b99a5c44;pointer-events:auto;touch-action:manipulation;opacity:1;visibility:visible}
body.desktop-client>button#guardian-quick-toggle>span{display:block;position:static;background:none;border:0;color:inherit;font:inherit;padding:0;margin:0}body.desktop-client>button#guardian-quick-toggle[aria-expanded=true]{border-color:#ffdc7d;background:#3a512e}
.guardian-preview-banner{z-index:40;font-weight:700;color:#fff0b0;border-color:#e1bc6c}

/* 2026-10-24（使用者：手機只留資訊與按鈕）：戰鬥小卡固定176px，移除模式英文與長篇說明；詳細管理按需開啟。 */
.guardian-quick-panel.gq-compact[data-gq-view=quick]{width:176px;max-width:calc(100vw - 76px);max-height:min(240px,var(--floating-available-height,calc(100dvh - 80px)));font-size:11px}
.gq-compact[data-gq-view=quick] .gq-handle{min-height:30px;padding:2px 5px}
.gq-compact[data-gq-view=quick] .gq-handle h2{font-size:12px;line-height:1.3}
.gq-compact[data-gq-view=quick] .gq-handle h2 small,.gq-compact[data-gq-view=quick] .gq-name small{display:none}
.gq-compact[data-gq-view=quick] .gq-handle button{min-height:26px;width:26px;padding:0;font-size:19px}
.gq-compact[data-gq-view=quick] .gq-tabs{position:absolute;top:3px;right:34px;display:block;padding:0;width:40px}
.gq-compact[data-gq-view=quick] .gq-tabs button{width:40px;min-height:25px;font-size:11px;padding:2px}
.gq-compact[data-gq-view=quick] .gq-summary{padding:4px 5px}
.gq-compact[data-gq-view=quick] .gq-name{gap:4px;font-size:11px;line-height:15px;margin:0 0 2px;overflow-wrap:anywhere}
.gq-compact[data-gq-view=quick] .gq-bar{height:13px;margin-top:2px}
.gq-compact[data-gq-view=quick] .gq-bar span{font-size:10px;line-height:11px}
.gq-compact[data-gq-view=quick] .gq-bar.xp{height:11px}
.gq-compact[data-gq-view=quick] .gq-bar.xp span{font-size:9px;line-height:9px}
.gq-compact[data-gq-view=quick] .gq-body{padding:0 5px 4px}
.gq-compact[data-gq-view=quick] .gq-combat-actions{gap:4px;margin:2px 0}
.gq-compact[data-gq-view=quick] .gq-combat-actions>button{flex:1;min-height:30px;font-size:12px;padding:3px 2px}
.gq-compact[data-gq-view=quick] .gq-compact-skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px}
.gq-compact[data-gq-view=quick] .gq-compact-skills>button{min-height:30px;font-size:11px;padding:3px 2px;overflow-wrap:anywhere}
.gq-compact[data-gq-view=quick] .gq-feedback{position:absolute;left:0;right:0;bottom:100%;font-size:10px;line-height:1.3;margin:0 0 3px;padding:2px 4px;max-height:28px;overflow:hidden;background:#10190ff0;border-radius:3px;pointer-events:none}
.gq-compact[data-gq-view=quick] .gq-summary .gq-note{font-size:11px;line-height:1.4}
body.touch-client .guardian-preview-banner{display:none}

/* 2026-10-24（使用者：圈選處、按鈕小一點）：保留可拖曳，手機40px、電腦46px。 */
body.desktop-client>button#guardian-quick-toggle:not([hidden]){width:46px;height:46px;min-width:46px;min-height:46px;font-size:13px}body.touch-client>button#guardian-quick-toggle:not([hidden]){width:40px;height:40px;min-width:40px;min-height:40px;font-size:12px}

/* 2026-10-28 gq-combat-actions four：攻擊／取消／待命／召回四顆等寬一列 */
.gq-combat-actions{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.gq-combat-actions button{min-width:0;padding-inline:2px;white-space:nowrap}.gq-combat-actions button[aria-pressed=true]{background:linear-gradient(#7a5f33,#4a3820);border-color:#e0bf78}
/* 2026-10-28（使用者截圖：守護動物管理頁 召喚／收回、模式三顆、攻擊選中目標／騎乘、補生命／補魔力 可以排列整齊嗎）：每排按鈕等寬，2 顆各半、3 顆三等分，文字置中不換行。 */
.guardian-quick-panel .gq-row>button{flex:1 1 0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}
