+
+
AI复盘(按交易记录)
+
+
@@ -885,6 +902,20 @@ function forceCloseDetailModal(){
}
function closeDetailModal(e){if(e.target && e.target.id==="detailModal"){forceCloseDetailModal();}}
function expandDetailToFullscreen(){ setDetailModalFullscreen(true); }
+function toggleReviewCardFullscreen(){
+ const card = document.getElementById("review-card");
+ if(!card) return;
+ const on = !card.classList.contains("is-fullscreen");
+ card.classList.toggle("is-fullscreen", on);
+ document.body.classList.toggle("review-card-fullscreen-open", on);
+ const btn = document.getElementById("review-card-fs-btn");
+ if(btn){ btn.textContent = on ? "退出全屏" : "全屏"; }
+}
+document.addEventListener("keydown", function(e){
+ if(e.key !== "Escape") return;
+ const card = document.getElementById("review-card");
+ if(card && card.classList.contains("is-fullscreen")){ toggleReviewCardFullscreen(); }
+});
function openAiInlineResultFullscreen(title, elementId){
const el = document.getElementById(elementId || "daily_result");
const text = String((el && el.innerText) || "").trim();
diff --git a/crypto_monitor_gate/templates/index.html b/crypto_monitor_gate/templates/index.html
index 66d2059..9b5bc55 100644
--- a/crypto_monitor_gate/templates/index.html
+++ b/crypto_monitor_gate/templates/index.html
@@ -96,6 +96,20 @@
.panel-scroll{flex:1;min-height:280px;max-height:420px;overflow:auto}
.records-card{grid-column:1/-1}
.review-card{grid-column:1/-1}
+ .review-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;flex-wrap:wrap}
+ .review-card-head h2{margin:0}
+ .review-card-fs-btn{padding:6px 12px;background:#1f3a5a;color:#8fc8ff;border:none;border-radius:8px;cursor:pointer;font-size:.82rem;white-space:nowrap}
+ .review-card-fs-btn:hover{filter:brightness(1.08)}
+ body.review-card-fullscreen-open{overflow:hidden}
+ .review-card.is-fullscreen{
+ position:fixed;inset:12px;z-index:1100;margin:0;
+ width:auto !important;max-width:none;height:auto;
+ overflow:auto;display:flex;flex-direction:column;
+ box-shadow:0 12px 48px rgba(0,0,0,.55);
+ }
+ .review-card.is-fullscreen .panel-list{flex:1;min-height:320px}
+ .review-card.is-fullscreen .panel-item{max-height:none;height:auto;min-height:280px}
+ .review-card.is-fullscreen .ai-result{max-height:min(36vh, 320px)}
@media (max-width: 1200px){
.stat-box{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
}
@@ -743,8 +757,11 @@
-
-
AI复盘(按交易记录)
+
+
+
AI复盘(按交易记录)
+
+
@@ -885,6 +902,20 @@ function forceCloseDetailModal(){
}
function closeDetailModal(e){if(e.target && e.target.id==="detailModal"){forceCloseDetailModal();}}
function expandDetailToFullscreen(){ setDetailModalFullscreen(true); }
+function toggleReviewCardFullscreen(){
+ const card = document.getElementById("review-card");
+ if(!card) return;
+ const on = !card.classList.contains("is-fullscreen");
+ card.classList.toggle("is-fullscreen", on);
+ document.body.classList.toggle("review-card-fullscreen-open", on);
+ const btn = document.getElementById("review-card-fs-btn");
+ if(btn){ btn.textContent = on ? "退出全屏" : "全屏"; }
+}
+document.addEventListener("keydown", function(e){
+ if(e.key !== "Escape") return;
+ const card = document.getElementById("review-card");
+ if(card && card.classList.contains("is-fullscreen")){ toggleReviewCardFullscreen(); }
+});
function openAiInlineResultFullscreen(title, elementId){
const el = document.getElementById(elementId || "daily_result");
const text = String((el && el.innerText) || "").trim();
diff --git a/crypto_monitor_gate_bot/templates/index.html b/crypto_monitor_gate_bot/templates/index.html
index cb534e1..83689fa 100644
--- a/crypto_monitor_gate_bot/templates/index.html
+++ b/crypto_monitor_gate_bot/templates/index.html
@@ -122,6 +122,20 @@
.btn-close-plan:hover{filter:brightness(1.08)}
.records-card{grid-column:1/-1}
.review-card{grid-column:1/-1}
+ .review-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;flex-wrap:wrap}
+ .review-card-head h2{margin:0}
+ .review-card-fs-btn{padding:6px 12px;background:#1f3a5a;color:#8fc8ff;border:none;border-radius:8px;cursor:pointer;font-size:.82rem;white-space:nowrap}
+ .review-card-fs-btn:hover{filter:brightness(1.08)}
+ body.review-card-fullscreen-open{overflow:hidden}
+ .review-card.is-fullscreen{
+ position:fixed;inset:12px;z-index:1100;margin:0;
+ width:auto !important;max-width:none;height:auto;
+ overflow:auto;display:flex;flex-direction:column;
+ box-shadow:0 12px 48px rgba(0,0,0,.55);
+ }
+ .review-card.is-fullscreen .panel-list{flex:1;min-height:320px}
+ .review-card.is-fullscreen .panel-item{max-height:none;height:auto;min-height:280px}
+ .review-card.is-fullscreen .ai-result{max-height:min(36vh, 320px)}
@media (min-width: 1440px){
.order-card .order-live-positions{max-height:420px}
.records-card .table-wrap{max-height:620px;overflow:auto}
@@ -569,8 +583,11 @@
-
-
AI复盘(按交易记录)
+
+
+
AI复盘(按交易记录)
+
+
@@ -723,6 +740,20 @@ function forceCloseDetailModal(){
if(modal){ modal.style.display = "none"; modal.classList.remove("fullscreen"); }
}
function expandDetailToFullscreen(){ setDetailModalFullscreen(true); }
+function toggleReviewCardFullscreen(){
+ const card = document.getElementById("review-card");
+ if(!card) return;
+ const on = !card.classList.contains("is-fullscreen");
+ card.classList.toggle("is-fullscreen", on);
+ document.body.classList.toggle("review-card-fullscreen-open", on);
+ const btn = document.getElementById("review-card-fs-btn");
+ if(btn){ btn.textContent = on ? "退出全屏" : "全屏"; }
+}
+document.addEventListener("keydown", function(e){
+ if(e.key !== "Escape") return;
+ const card = document.getElementById("review-card");
+ if(card && card.classList.contains("is-fullscreen")){ toggleReviewCardFullscreen(); }
+});
function openAiInlineResultFullscreen(title, elementId){
const el = document.getElementById(elementId || "daily_result");
const text = String((el && el.innerText) || "").trim();
diff --git a/crypto_monitor_okx/templates/index.html b/crypto_monitor_okx/templates/index.html
index 77f407a..e0f508e 100644
--- a/crypto_monitor_okx/templates/index.html
+++ b/crypto_monitor_okx/templates/index.html
@@ -96,6 +96,20 @@
.panel-scroll{flex:1;min-height:280px;max-height:420px;overflow:auto}
.records-card{grid-column:1/-1}
.review-card{grid-column:1/-1}
+ .review-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;flex-wrap:wrap}
+ .review-card-head h2{margin:0}
+ .review-card-fs-btn{padding:6px 12px;background:#1f3a5a;color:#8fc8ff;border:none;border-radius:8px;cursor:pointer;font-size:.82rem;white-space:nowrap}
+ .review-card-fs-btn:hover{filter:brightness(1.08)}
+ body.review-card-fullscreen-open{overflow:hidden}
+ .review-card.is-fullscreen{
+ position:fixed;inset:12px;z-index:1100;margin:0;
+ width:auto !important;max-width:none;height:auto;
+ overflow:auto;display:flex;flex-direction:column;
+ box-shadow:0 12px 48px rgba(0,0,0,.55);
+ }
+ .review-card.is-fullscreen .panel-list{flex:1;min-height:320px}
+ .review-card.is-fullscreen .panel-item{max-height:none;height:auto;min-height:280px}
+ .review-card.is-fullscreen .ai-result{max-height:min(36vh, 320px)}
@media (max-width: 1200px){
.stat-box{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
}
@@ -752,8 +766,11 @@
-
-
AI复盘(按交易记录)
+
+
+
AI复盘(按交易记录)
+
+
@@ -894,6 +911,20 @@ function forceCloseDetailModal(){
}
function closeDetailModal(e){if(e.target && e.target.id==="detailModal"){forceCloseDetailModal();}}
function expandDetailToFullscreen(){ setDetailModalFullscreen(true); }
+function toggleReviewCardFullscreen(){
+ const card = document.getElementById("review-card");
+ if(!card) return;
+ const on = !card.classList.contains("is-fullscreen");
+ card.classList.toggle("is-fullscreen", on);
+ document.body.classList.toggle("review-card-fullscreen-open", on);
+ const btn = document.getElementById("review-card-fs-btn");
+ if(btn){ btn.textContent = on ? "退出全屏" : "全屏"; }
+}
+document.addEventListener("keydown", function(e){
+ if(e.key !== "Escape") return;
+ const card = document.getElementById("review-card");
+ if(card && card.classList.contains("is-fullscreen")){ toggleReviewCardFullscreen(); }
+});
function openAiInlineResultFullscreen(title, elementId){
const el = document.getElementById(elementId || "daily_result");
const text = String((el && el.innerText) || "").trim();