/* TuiHocTA Shared Chart Core v1.5
 * Canonical visual/runtime foundation for every ECharts analytical page.
 * IMPORTANT: grid, crosshair/date label, right-space and fullscreen policy
 * belong here. Page modules only provide series/data/readouts.
 */
:root{
  --thta-chart-up:#2962ff;
  --thta-chart-down:#f23645;
  --thta-chart-grid:#e2e8f0;
  --thta-chart-axis-text:#475569;
  --thta-chart-axis-line:#94a3b8;
  --thta-chart-pointer:#111827;
  --thta-chart-right-space-slots:14;
  --thta-chart-grid-x:92px;
  --thta-chart-grid-y:52px;
}
.thta-chart-workspace:fullscreen{
  background:var(--thta-bg,#f6f8fb);
  overflow:auto;
  box-sizing:border-box;
}
/* One stable grid renderer only. ECharts splitLine is disabled by the core. */
.thta-price-chart,
.thta-indicator-chart{
  background-color:#fff;
  background-image:
    repeating-linear-gradient(
      to right,
      rgba(226,232,240,.72) 0,
      rgba(226,232,240,.72) 1px,
      transparent 1px,
      transparent var(--thta-chart-grid-x)
    ),
    repeating-linear-gradient(
      to bottom,
      rgba(226,232,240,.72) 0,
      rgba(226,232,240,.72) 1px,
      transparent 1px,
      transparent var(--thta-chart-grid-y)
    );
  background-position:56px 10px,56px 10px;
}
.thta-shared-crosshair{
  position:absolute;
  width:1px;
  margin-left:-.5px;
  border-left:1px dashed rgba(100,116,139,.55);
  pointer-events:none;
  z-index:30;
}
.thta-shared-date-label{
  position:absolute;
  transform:translateX(-50%);
  background:#111827;
  color:#fff;
  border-radius:2px;
  padding:4px 7px;
  font-size:11px;
  line-height:1.15;
  font-weight:600;
  pointer-events:none;
  white-space:nowrap;
  z-index:40;
}
.thta-price-hover-crosshair{
  position:absolute;
  height:0;
  border-top:1px dashed rgba(71,85,105,.62);
  pointer-events:none;
  z-index:31;
}
.thta-price-hover-label{
  position:absolute;
  transform:translateY(-50%);
  background:#111827;
  color:#fff;
  border-radius:2px;
  padding:4px 6px;
  font-size:12px;
  line-height:1.15;
  font-weight:700;
  pointer-events:none;
  white-space:nowrap;
  z-index:45;
}

/* Shared drawing tools v1.0 -------------------------------------------------
 * Canonical toolbar + data-anchored SVG layer for Market Chart / RS Momentum.
 */
.thta-drawing-toolbar{
  display:inline-flex;
  align-items:center;
  gap:3px;
  padding:3px;
  border:1px solid var(--thta-border,#e5e7eb);
  border-radius:9px;
  background:#fff;
  box-shadow:0 1px 4px rgba(15,23,42,.04);
}
.thta-drawing-tool{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  padding:0;
  border:0;
  border-radius:6px;
  background:transparent;
  color:#334155;
  font:inherit;
  font-size:15px;
  font-weight:700;
  line-height:1;
  cursor:pointer;
}
.thta-drawing-tool:hover,
.thta-drawing-tool.is-active,
.thta-drawing-tool.is-magnet-strong{
  background:#eef4ff;
  color:#2563eb;
}
.thta-drawing-tool.is-magnet-weak{
  background:#f8fafc;
  color:#64748b;
}
.thta-drawing-magnet{
  width:38px;
  font-size:12px;
  letter-spacing:-.5px;
}
.thta-drawing-tool:focus-visible{
  outline:2px solid rgba(37,99,235,.35);
  outline-offset:1px;
}
.thta-drawing-toolbar-divider{
  width:1px;
  height:20px;
  margin:0 2px;
  background:#e2e8f0;
}
.thta-chart-drawing-surface{
  position:relative;
}
.thta-chart-drawing-surface.is-drawing-active{
  cursor:crosshair;
}
.thta-chart-drawing-layer{
  position:absolute;
  inset:0;
  z-index:25;
  overflow:visible;
  pointer-events:none;
}
.thta-chart-text-editor{
  position:absolute;
  z-index:60;
  width:190px;
  min-height:34px;
  padding:6px 8px;
  border:1px solid #2563eb;
  border-radius:5px;
  background:rgba(255,255,255,.98);
  color:#111827;
  font-family:inherit;
  font-size:13px;
  font-weight:600;
  line-height:1.35;
  box-shadow:0 4px 14px rgba(15,23,42,.14);
  resize:both;
  transform:translateY(-50%);
}
.thta-chart-text-editor:focus{
  outline:2px solid rgba(37,99,235,.14);
}
/* Shared indicator horizontal cursor belongs to the core, not a page module. */
.thta-indicator-horizontal-crosshair{
  position:absolute;
  z-index:28;
  height:0;
  border-top:1px dashed #94a3b8;
  pointer-events:none;
}
.thta-indicator-horizontal-label{
  position:absolute;
  z-index:29;
  transform:translateY(-50%);
  pointer-events:none;
  min-width:52px;
  padding:3px 5px;
  border-radius:3px;
  background:#94a3b8;
  color:#fff;
  font-size:11px;
  line-height:1.15;
  font-weight:700;
  text-align:center;
  white-space:nowrap;
}
@media(max-width:780px){
  .thta-drawing-toolbar{
    max-width:100%;
    overflow-x:auto;
  }
  .thta-drawing-tool{
    flex:0 0 30px;
  }
}

/* Shared Drawing UX v1.5 ---------------------------------------------------
 * Larger desktop touch targets + object settings owned by Shared Chart Core.
 */
.thta-drawing-toolbar{
  gap:5px;
  padding:5px;
  border-radius:11px;
}
.thta-drawing-tool{
  width:44px;
  height:44px;
  border-radius:8px;
  font-size:19px;
}
.thta-drawing-magnet{
  width:54px;
  font-size:13px;
  letter-spacing:-.25px;
}
.thta-drawing-toolbar-divider{
  height:30px;
  margin:0 3px;
}
.thta-drawing-settings{
  position:absolute;
  z-index:80;
  width:min(280px,calc(100% - 16px));
  box-sizing:border-box;
  padding:12px;
  border:1px solid #cbd5e1;
  border-radius:10px;
  background:#fff;
  color:#0f172a;
  box-shadow:0 12px 30px rgba(15,23,42,.20);
  font-size:13px;
}
.thta-drawing-settings-title{
  margin:0 0 10px;
  font-size:14px;
  font-weight:800;
}
.thta-drawing-setting-field{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:8px 0;
}
.thta-drawing-setting-field > span{
  flex:1 1 auto;
  color:#475569;
  font-weight:600;
}
.thta-drawing-setting-field input[type="color"]{
  width:48px;
  height:32px;
  padding:2px;
  border:1px solid #cbd5e1;
  border-radius:6px;
  background:#fff;
}
.thta-drawing-setting-field input[type="number"],
.thta-drawing-setting-field select{
  width:126px;
  min-height:34px;
  border:1px solid #cbd5e1;
  border-radius:6px;
  padding:5px 7px;
  background:#fff;
  color:#0f172a;
}
.thta-drawing-settings-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:12px;
  padding-top:10px;
  border-top:1px solid #e2e8f0;
}
.thta-drawing-settings-actions button{
  appearance:none;
  min-height:34px;
  padding:0 12px;
  border:1px solid #cbd5e1;
  border-radius:7px;
  background:#fff;
  color:#0f172a;
  font:inherit;
  font-weight:700;
  cursor:pointer;
}
.thta-drawing-settings-actions button:first-child{
  border-color:#2563eb;
  background:#2563eb;
  color:#fff;
}
@media(max-width:780px){
  .thta-drawing-tool{ flex:0 0 44px; }
  .thta-drawing-magnet{ flex-basis:54px; }
}
