/* ============================================
   Tech Page Styles — v3
   Primary: #00d4ff (cyan)  Secondary: #7c5cff (purple)
   ============================================ */

.tech-wrap { padding: 0 0 20px; }
.tech-sec { padding: 24px 16px; position: relative; }
.tech-sec + .tech-sec { border-top: 1px solid rgba(0,212,255,.06); }
.tech-sec-tag {
  font-family:'Orbitron',monospace; font-size:9px; letter-spacing:3px;
  color:#00d4ff; text-transform:uppercase; margin-bottom:8px; opacity:.7;
  display:flex; align-items:center; gap:6px;
}
.tech-sec-tag::before { content:''; width:16px; height:1px; background:#00d4ff; }
.tech-sec-title {
  font-family:'Orbitron',monospace; font-size:clamp(18px,5vw,26px);
  font-weight:900; color:#fff; margin-bottom:8px; line-height:1.3;
}
.tech-ac { color:#00d4ff; text-shadow:0 0 15px rgba(0,212,255,.3); }
.tech-sec-desc { font-size:13px; color:#666; max-width:600px; line-height:2; margin-bottom:16px; }
.tech-grn { color:#00d4ff; }
.tech-red { color:#ff4466; }
.tech-up { color:#00d4ff; }
.tech-white { color:#eee; }

/* ======== BLOCK 1: Hero 流動技術文案 ======== */
.tech-hero-sec {
  padding:28px 16px 24px;
  border-bottom:1px solid rgba(0,212,255,.06);
  position:relative; overflow:hidden;
}
.tech-hero-sec::before {
  content:''; position:absolute; top:0; left:50%; width:300px; height:300px;
  transform:translate(-50%,-60%); border-radius:50%;
  background:radial-gradient(circle, rgba(0,212,255,.06) 0%, transparent 70%);
  pointer-events:none;
}
.tech-hero-inner { position:relative; z-index:1; text-align:center; max-width:500px; margin:0 auto; }
.tech-hero-tag {
  font-family:'Orbitron',monospace; font-size:9px; letter-spacing:3px;
  color:#00d4ff; text-transform:uppercase; opacity:.6; margin-bottom:10px;
}
.tech-hero-title {
  font-family:'Orbitron',monospace; font-size:clamp(22px,6vw,32px);
  font-weight:900; color:#fff; margin-bottom:14px; line-height:1.3;
}
.tech-hero-desc {
  font-size:13px; color:#666; line-height:2; text-align:justify;
}

/* ======== BLOCK 3: Machine Mini Cards ======== */
.tech-machine-row {
  display:flex; gap:10px; margin-bottom:16px;
}
.tech-machine-mini {
  flex:1; display:flex; align-items:center; gap:10px;
  padding:12px; border:1px solid rgba(0,212,255,.1); border-radius:10px;
  background:rgba(10,10,26,.8); cursor:pointer; transition:all .3s;
  position:relative;
}
.tech-machine-mini:hover {
  border-color:rgba(0,212,255,.3);
  box-shadow:0 4px 16px rgba(0,212,255,.08);
}
.tech-machine-mini.tech-machine-active {
  border-color:#00d4ff;
  box-shadow:0 0 16px rgba(0,212,255,.12), inset 0 0 20px rgba(0,212,255,.03);
}
.tech-machine-mini.tech-machine-active .tech-mm-btn {
  background:rgba(0,212,255,.15); color:#00d4ff; border-color:#00d4ff;
}
.tech-mm-icon {
  width:48px; height:48px; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  border-radius:8px;
}
.tech-mm-cyan { background:rgba(0,212,255,.05); }
.tech-mm-purple { background:rgba(124,92,255,.05); }
.tech-mm-info { flex:1; min-width:0; }
.tech-mm-name {
  font-family:'Orbitron',monospace; font-size:11px; font-weight:700;
  color:#ddd; margin-bottom:1px; white-space:nowrap;
  overflow:hidden; text-overflow:ellipsis;
}
.tech-mm-sub { font-size:9px; color:#505070; letter-spacing:.3px; }
.tech-mm-btn {
  padding:5px 12px; border:1px solid rgba(0,212,255,.15); border-radius:5px;
  background:rgba(0,212,255,.04); color:#505070; font-size:10px; font-weight:600;
  cursor:pointer; transition:all .2s; flex-shrink:0;
}
.tech-mm-btn-off {
  opacity:.3; cursor:not-allowed;
  border-color:rgba(124,92,255,.15); background:rgba(124,92,255,.04); color:#7c5cff;
}

/* ======== DCO Panel ======== */
.tech-dco {
  margin-top:12px; border:1px solid rgba(0,212,255,.12); border-radius:12px;
  background:rgba(8,8,20,.95); overflow:hidden;
  box-shadow:0 4px 24px rgba(0,0,0,.3), inset 0 1px 0 rgba(0,212,255,.05);
  animation: techDcoSlide .3s ease-out;
}
@keyframes techDcoSlide {
  from { opacity:0; transform:translateY(-8px); }
  to { opacity:1; transform:translateY(0); }
}
.tech-dco-header-bar {
  display:flex; align-items:center; justify-content:space-between;
  padding:12px 14px; border-bottom:1px solid rgba(0,212,255,.06);
  flex-wrap:wrap; gap:6px;
}
.tech-dco-title {
  font-family:'Orbitron',monospace; font-size:12px; color:#fff; font-weight:700;
  display:flex; align-items:center; gap:6px;
}
.tech-dco-round { font-size:9px; color:#3a3a5a; font-family:'Orbitron',monospace; margin-top:2px; }
.tech-dco-status { padding:3px 8px; border-radius:4px; font-size:8px; font-weight:600; letter-spacing:1px; }
.tech-dco-run { background:rgba(0,212,255,.08); color:#00d4ff; border:1px solid rgba(0,212,255,.2); }
.tech-dco-lock { background:rgba(251,191,36,.08); color:#FBBF24; border:1px solid rgba(251,191,36,.2); }
.tech-dco-done { background:rgba(124,92,255,.08); color:#7c5cff; border:1px solid rgba(124,92,255,.2); }
.tech-dco-timer { display:flex; align-items:center; gap:8px; }
.tech-dco-ring { width:44px; height:44px; position:relative; }
.tech-dco-ring svg { transform:rotate(-90deg); }
.tech-dco-ring circle { fill:none; stroke-width:3; }
.tech-dco-ring-bg { stroke:rgba(0,212,255,.08); }
.tech-dco-ring-fg { stroke:#00d4ff; stroke-linecap:round; transition:stroke-dashoffset 1s linear; }
.tech-dco-timer-label { font-size:7px; color:#3a3a5a; letter-spacing:2px; text-transform:uppercase; }
.tech-dco-timer-num {
  font-family:'Orbitron',monospace; font-size:22px; font-weight:900;
  color:#00d4ff; text-shadow:0 0 10px rgba(0,212,255,.4); line-height:1;
}
.tech-dco-timer-num.tech-warn { color:#FBBF24; text-shadow:0 0 10px rgba(251,191,36,.4); }
.tech-dco-timer-num.tech-danger {
  color:#F87171; text-shadow:0 0 10px rgba(248,113,113,.4);
  animation:techBlink .5s ease-in-out infinite;
}
@keyframes techBlink { 0%,100%{opacity:1;} 50%{opacity:.3;} }

.tech-dco-phases { display:flex; border-bottom:1px solid rgba(0,212,255,.06); }
.tech-dco-phase {
  flex:1; text-align:center; padding:7px 4px; font-size:9px; letter-spacing:.5px;
  color:#2a2a4a; position:relative; transition:all .3s;
}
.tech-dco-phase-on { color:#00d4ff; background:rgba(0,212,255,.04); }
.tech-dco-phase-on::after {
  content:''; position:absolute; bottom:0; left:20%; right:20%; height:2px;
  background:linear-gradient(90deg,transparent,#00d4ff,transparent); border-radius:1px;
}
.tech-dco-phase-n { font-family:'Orbitron',monospace; font-size:7px; display:block; margin-bottom:1px; }

.tech-dco-grid {
  display:grid; grid-template-columns:repeat(5,1fr); gap:6px; padding:12px 14px;
}
@media(max-width:600px) { .tech-dco-grid { grid-template-columns:repeat(2,1fr); } }
.tech-dco-cell {
  display:flex; align-items:center; gap:5px; padding:10px 8px;
  border:1px solid rgba(0,212,255,.06); border-radius:7px;
  background:rgba(0,212,255,.02); cursor:pointer; transition:all .25s;
  user-select:none; position:relative;
}
.tech-dco-cell:hover {
  border-color:rgba(0,212,255,.25); background:rgba(0,212,255,.06);
  box-shadow:0 0 8px rgba(0,212,255,.08);
}
.tech-dco-cell-sel {
  border-color:#00d4ff !important; background:rgba(0,212,255,.1) !important;
  box-shadow:0 0 12px rgba(0,212,255,.15) !important;
}
.tech-dco-cell-idx { font-family:'Orbitron',monospace; font-size:8px; color:#3a3a5a; min-width:12px; }
.tech-dco-cell-code { font-family:'Orbitron',monospace; font-size:9px; color:#a0a0c0; letter-spacing:.3px; }
.tech-dco-cell-sel .tech-dco-cell-code { color:#00d4ff; }

.tech-dco-bet {
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 14px; border-top:1px solid rgba(0,212,255,.06);
  background:rgba(0,212,255,.02); flex-wrap:wrap; gap:6px;
}
.tech-dco-bet-info { font-size:10px; color:#505070; }
.tech-dco-bet-info span { color:#00d4ff; font-weight:500; }
.tech-dco-bet-actions { display:flex; gap:6px; align-items:center; }
.tech-dco-input {
  width:70px; padding:7px 8px; border:1px solid rgba(0,212,255,.15); border-radius:5px;
  background:rgba(0,0,0,.3); color:#fff; font-size:11px;
  font-family:'Orbitron',monospace; outline:none; transition:border-color .3s;
}
.tech-dco-input:focus { border-color:rgba(0,212,255,.5); box-shadow:0 0 8px rgba(0,212,255,.1); }
.tech-dco-btn {
  padding:7px 14px; border:1px solid #00d4ff; border-radius:5px;
  background:linear-gradient(135deg,rgba(0,212,255,.15),rgba(124,92,255,.1));
  color:#00d4ff; font-size:11px; font-weight:600; cursor:pointer;
  font-family:'Noto Sans TC',sans-serif; transition:all .3s; letter-spacing:.5px;
}
.tech-dco-btn:hover {
  background:linear-gradient(135deg,rgba(0,212,255,.25),rgba(124,92,255,.2));
  box-shadow:0 0 12px rgba(0,212,255,.2);
}
.tech-dco-btn:disabled { opacity:.3; cursor:not-allowed; }

.tech-dco-result {
  padding:12px 14px; border-top:1px solid rgba(0,212,255,.06);
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:6px;
}
.tech-dco-result-win { background:rgba(16,185,129,.04); }
.tech-dco-result-lose { background:rgba(248,113,113,.03); }
.tech-dco-result-msg { font-size:12px; font-weight:600; }
.tech-dco-result-detail { font-size:9px; color:#505070; margin-top:2px; }
.tech-dco-result-detail span { color:#7c5cff; font-family:'Orbitron',monospace; }
.tech-dco-result-next {
  font-size:9px; color:#3a3a5a; font-family:'Orbitron',monospace;
  animation:techPulse 1s ease-in-out infinite;
}
@keyframes techPulse { 0%,100%{opacity:.3;} 50%{opacity:.9;} }

.tech-dco-balance {
  display:flex; align-items:center; gap:10px;
  padding:10px 14px; border-top:1px solid rgba(0,212,255,.06);
  background:linear-gradient(135deg,rgba(0,212,255,.03),rgba(124,92,255,.02));
}
.tech-dco-balance-icon {
  width:32px; height:32px; border-radius:8px;
  background:linear-gradient(135deg,rgba(0,212,255,.12),rgba(124,92,255,.08));
  border:1px solid rgba(0,212,255,.15);
  display:flex; align-items:center; justify-content:center;
  color:#00d4ff;
}
.tech-dco-balance-label {
  font-size:9px; color:#505070; letter-spacing:1px; text-transform:uppercase;
  font-family:'Orbitron',monospace;
}
.tech-dco-balance-val {
  font-size:16px; font-weight:700; color:#00d4ff;
  font-family:'Orbitron',monospace; letter-spacing:1px;
}

/* ======== BLOCK 2: TOKEN Sales ======== */
.tech-live-dot {
  width:6px; height:6px; border-radius:50%; background:#F87171;
  animation:techLp 1s ease-in-out infinite; box-shadow:0 0 6px rgba(248,113,113,.5);
  display:inline-block;
}
@keyframes techLp { 0%,100%{opacity:1;transform:scale(1);} 50%{opacity:.4;transform:scale(.6);} }

/* Price compare */
.ts-price-row {
  display:flex; align-items:center; gap:0; margin-bottom:16px;
  border:1px solid rgba(0,212,255,.1); border-radius:12px; overflow:hidden;
  background:rgba(8,8,20,.8);
}
.ts-price-card { flex:1; padding:16px 14px; text-align:center; }
.ts-price-platform { background:rgba(0,212,255,.02); }
.ts-price-market { background:rgba(124,92,255,.02); }
.ts-price-vs {
  width:40px; text-align:center; font-family:'Orbitron',monospace;
  font-size:10px; font-weight:900; color:#ffd700; letter-spacing:1px;
  background:rgba(255,215,0,.03); border-left:1px solid rgba(255,255,255,.03);
  border-right:1px solid rgba(255,255,255,.03); padding:8px 0;
}
.ts-price-label {
  font-size:9px; color:#505070; letter-spacing:2px; text-transform:uppercase;
  margin-bottom:6px;
}
.ts-price-val {
  font-family:'Orbitron',monospace; font-size:clamp(18px,5vw,26px);
  font-weight:900; line-height:1.3;
}
.ts-price-platform .ts-price-val { color:#00d4ff; }
.ts-price-market .ts-price-val { color:#7c5cff; }
.ts-price-sub { font-size:10px; color:#3a3a5a; margin-top:4px; }
.ts-premium { color:#10B981; font-weight:700; }

/* 7-day chart */
.ts-chart-wrap {
  margin-bottom:16px; border:1px solid rgba(0,212,255,.08); border-radius:10px;
  background:rgba(6,10,15,.9); padding:12px 14px; overflow:hidden;
}
.ts-chart-header {
  display:flex; align-items:center; justify-content:space-between;
  margin-bottom:10px;
}
.ts-chart-title {
  font-family:'Orbitron',monospace; font-size:10px; color:#a0a0c0;
  letter-spacing:1px;
}
.ts-chart-legend { font-size:9px; color:#505070; display:flex; align-items:center; gap:4px; }
.ts-legend-dot { width:8px; height:3px; border-radius:2px; background:#7c5cff; display:inline-block; }
#tsChart { width:100%; height:140px; display:block; }

/* LIVE trade rows */
.ts-live-wrap {
  border:1px solid rgba(0,212,255,.1); border-radius:10px;
  background:rgba(6,10,15,.9); overflow:hidden;
}
.ts-live-header {
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 14px; border-bottom:1px solid rgba(0,212,255,.06);
}
.ts-live-title {
  font-family:'Orbitron',monospace; font-size:11px; color:#eee; font-weight:700;
  display:flex; align-items:center; gap:6px;
}
.ts-live-stats { font-size:9px; color:#3a3a5a; }
.ts-live-stats span { color:#00d4ff; font-weight:500; }
.ts-live-cols {
  display:grid; grid-template-columns:44px 1.2fr 1fr 1fr 1fr;
  padding:6px 14px; font-size:7px; color:#3a3a5a; letter-spacing:1px;
  text-transform:uppercase; border-bottom:1px solid rgba(0,212,255,.04);
}
.ts-live-cols > div:nth-child(n+3) { text-align:right; }
.ts-live-rows { max-height:200px; overflow:hidden; }
.ts-live-row {
  display:grid; grid-template-columns:44px 1.2fr 1fr 1fr 1fr;
  padding:8px 14px; font-size:10px; border-bottom:1px solid rgba(255,255,255,.02);
  animation:techFi .4s ease-out;
}
@keyframes techFi { from{opacity:0;transform:translateY(-4px);} to{opacity:1;transform:translateY(0);} }
.ts-live-row:hover { background:rgba(0,212,255,.03); }
.ts-live-sell { color:#F87171; font-family:'Orbitron',monospace; font-size:9px; font-weight:600; }
.ts-live-mkt { color:#a0a0c0; font-size:10px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ts-live-qty { font-family:'Orbitron',monospace; font-size:9px; color:#505070; text-align:right; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ts-live-price { font-family:'Orbitron',monospace; font-size:9px; color:#7c5cff; text-align:right; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ts-live-income { font-family:'Orbitron',monospace; font-size:9px; color:#10B981; text-align:right; font-weight:700; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* ======== BLOCK 4: Records ======== */
.tech-record-tabs { display:flex; border-bottom:1px solid rgba(0,212,255,.06); margin-bottom:12px; }
.tech-record-tab {
  padding:8px 14px; font-size:11px; color:#3a3a5a; cursor:pointer;
  border-bottom:2px solid transparent; transition:all .3s;
}
.tech-record-tab-on { color:#00d4ff; border-bottom-color:#00d4ff; }
.tech-record-tab:hover { color:#a0a0c0; }
.tech-record-table { width:100%; border-collapse:collapse; }
.tech-record-table th {
  text-align:left; font-size:8px; color:#3a3a5a; letter-spacing:1px;
  text-transform:uppercase; padding:8px; border-bottom:1px solid rgba(0,212,255,.06);
}
.tech-record-table td {
  padding:10px 8px; font-size:10px; border-bottom:1px solid rgba(255,255,255,.02); color:#a0a0c0;
}
.tech-record-table tr:hover td { background:rgba(0,212,255,.03); }
.tech-record-dot { display:inline-block; width:5px; height:5px; border-radius:50%; margin-right:4px; }
.tech-record-dot-pass { background:#10B981; box-shadow:0 0 4px rgba(16,185,129,.5); }
.tech-record-dot-fail { background:#F87171; box-shadow:0 0 4px rgba(248,113,113,.5); }
.tech-record-pass { color:#10B981; font-weight:500; }
.tech-record-fail { color:#F87171; }
.tech-record-mono { font-family:'Orbitron',monospace; }
.tech-record-tag-basic {
  display:inline-block; padding:2px 6px; border-radius:3px; font-size:8px;
  background:rgba(0,212,255,.08); color:#00d4ff;
}
.tech-record-tag-pro {
  display:inline-block; padding:2px 6px; border-radius:3px; font-size:8px;
  background:rgba(124,92,255,.08); color:#7c5cff;
}

.tech-feed-rows::-webkit-scrollbar { width:3px; }
.tech-feed-rows::-webkit-scrollbar-track { background:transparent; }
.tech-feed-rows::-webkit-scrollbar-thumb { background:rgba(0,212,255,.15); border-radius:3px; }

/* ======== DLO - DATA LINE OPERATION (PRO) ======== */
.tech-dlo {
  margin-top:12px; border:1px solid rgba(124,92,255,.15); border-radius:12px;
  background:rgba(8,8,20,.95); overflow:hidden;
  box-shadow:0 4px 24px rgba(0,0,0,.3), inset 0 1px 0 rgba(124,92,255,.08);
  animation: techDloSlide .3s ease-out;
}
@keyframes techDloSlide {
  from { opacity:0; transform:translateY(-8px); }
  to { opacity:1; transform:translateY(0); }
}
.tech-dlo-header-bar {
  display:flex; align-items:center; justify-content:space-between;
  padding:12px 14px; border-bottom:1px solid rgba(124,92,255,.08);
  flex-wrap:wrap; gap:6px;
}
.tech-dlo-title {
  font-family:'Orbitron',monospace; font-size:12px; color:#fff; font-weight:700;
  display:flex; align-items:center; gap:6px;
}
.tech-dlo-round { font-size:9px; color:#3a3a5a; font-family:'Orbitron',monospace; margin-top:2px; }
.tech-dlo-status { padding:3px 8px; border-radius:4px; font-size:8px; font-weight:600; letter-spacing:1px; }
.tech-dlo-run { background:rgba(124,92,255,.1); color:#a78bfa; border:1px solid rgba(124,92,255,.25); }
.tech-dlo-lock { background:rgba(251,191,36,.08); color:#FBBF24; border:1px solid rgba(251,191,36,.2); }
.tech-dlo-done { background:rgba(0,232,160,.08); color:#00e8a0; border:1px solid rgba(0,232,160,.2); }
.tech-dlo-timer { display:flex; align-items:center; gap:8px; }
.tech-dlo-ring { width:44px; height:44px; position:relative; }
.tech-dlo-ring svg { transform:rotate(-90deg); }
.tech-dlo-ring circle { fill:none; stroke-width:3; }
.tech-dlo-ring-bg { stroke:rgba(124,92,255,.1); }
.tech-dlo-ring-fg { stroke:#a78bfa; stroke-linecap:round; transition:stroke-dashoffset 1s linear; }
.tech-dlo-timer-label { font-size:7px; color:#3a3a5a; letter-spacing:2px; text-transform:uppercase; }
.tech-dlo-timer-num {
  font-family:'Orbitron',monospace; font-size:22px; font-weight:900;
  color:#a78bfa; text-shadow:0 0 10px rgba(124,92,255,.4); line-height:1;
}
.tech-dlo-timer-num.tech-danger {
  color:#F87171; text-shadow:0 0 10px rgba(248,113,113,.4);
  animation:techBlink .5s ease-in-out infinite;
}

/* K-line chart */
.tech-dlo-chart {
  position:relative; width:100%; aspect-ratio:16/9;
  min-height:170px; max-height:280px;
  background:rgba(3,6,15,.6); overflow:hidden;
}
.tech-dlo-chart canvas { display:block; width:100%; height:100%; }
.tech-dlo-chart-hud {
  position:absolute; top:8px; left:10px; right:10px;
  display:flex; justify-content:space-between; align-items:flex-start;
  pointer-events:none; z-index:2;
}
.tech-dlo-chart-sym { font-family:'Orbitron',monospace; font-size:9px; color:#505070; letter-spacing:1.5px; }
.tech-dlo-chart-p { text-align:right; }
.tech-dlo-chart-price { font-family:'Orbitron',monospace; font-size:16px; font-weight:700; transition:color .3s; }
.tech-dlo-chart-price.bull { color:#00e8a0; }
.tech-dlo-chart-price.bear { color:#ff3860; }
.tech-dlo-chart-chg { font-family:'Orbitron',monospace; font-size:9px; margin-top:1px; transition:color .3s; }
.tech-dlo-chart-chg.bull { color:#00e8a0; }
.tech-dlo-chart-chg.bear { color:#ff3860; }

/* Direction bar */
.tech-dlo-dir-bar {
  display:flex; align-items:center; justify-content:space-between;
  padding:8px 14px; background:rgba(14,24,48,.6);
  border-bottom:1px solid rgba(124,92,255,.06);
}
.tech-dlo-dir-info { display:flex; align-items:center; gap:8px; }
.tech-dlo-dir-label { font-size:9px; color:#505070; letter-spacing:1px; }
.tech-dlo-dir-val { font-family:'Orbitron',monospace; font-size:11px; font-weight:700; padding:2px 8px; border-radius:4px; }
.tech-dlo-dir-val.wait { background:rgba(80,80,112,.15); color:#505070; }
.tech-dlo-dir-val.bull { background:rgba(0,232,160,.1); color:#00e8a0; }
.tech-dlo-dir-val.bear { background:rgba(255,56,96,.1); color:#ff3860; }
.tech-dlo-balance-info { display:flex; align-items:center; gap:6px; }
.tech-dlo-bal-label { font-size:9px; color:#505070; letter-spacing:1px; }
.tech-dlo-bal-val { font-family:'Orbitron',monospace; font-size:14px; font-weight:700; color:#ffc800; }

/* Bet controls */
.tech-dlo-bet { padding:14px; border-bottom:1px solid rgba(124,92,255,.06); }
.tech-dlo-chip-row { display:flex; gap:5px; margin-bottom:10px; }
.tech-dlo-chip {
  flex:1; padding:6px 2px; border-radius:5px;
  background:rgba(14,24,48,.8); border:1px solid rgba(124,92,255,.08);
  font-family:'Orbitron',monospace; font-size:10px; font-weight:600;
  text-align:center; color:#505070; cursor:pointer; transition:all .2s;
}
.tech-dlo-chip:hover { border-color:rgba(124,92,255,.2); color:#a0a0c0; }
.tech-dlo-chip-sel { border-color:#a78bfa !important; color:#a78bfa !important; background:rgba(124,92,255,.08) !important; }
.tech-dlo-input-row {
  display:flex; align-items:center; gap:6px;
  padding:8px 10px; border-radius:6px;
  background:rgba(3,6,15,.6); border:1px solid rgba(124,92,255,.1);
  margin-bottom:10px;
}
.tech-dlo-input-icon { color:#ffc800; font-size:13px; }
.tech-dlo-input {
  flex:1; font-family:'Orbitron',monospace; font-size:13px; font-weight:600;
  background:none; color:#fff; border:none; outline:none;
}
.tech-dlo-input::placeholder { color:#334466; }
.tech-dlo-input-suf { font-size:9px; color:#334466; }
.tech-dlo-dir-btns { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:10px; }
.tech-dlo-dir-btn {
  position:relative; overflow:hidden;
  padding:14px 6px 10px; border-radius:8px;
  background:rgba(3,6,15,.6); border:1px solid rgba(124,92,255,.08);
  text-align:center; cursor:pointer; transition:all .3s;
}
.tech-dlo-dir-btn.up { color:#00e8a0; }
.tech-dlo-dir-btn.down { color:#ff3860; }
.tech-dlo-dir-btn.up:hover, .tech-dlo-dir-btn.up.tech-dlo-dir-btn-sel {
  border-color:#00e8a0; box-shadow:0 0 16px rgba(0,232,160,.2);
  background:rgba(0,232,160,.04);
}
.tech-dlo-dir-btn.down:hover, .tech-dlo-dir-btn.down.tech-dlo-dir-btn-sel {
  border-color:#ff3860; box-shadow:0 0 16px rgba(255,56,96,.2);
  background:rgba(255,56,96,.04);
}
.tech-dlo-dir-btn-off { opacity:.25; pointer-events:none; }
.tech-dlo-dir-arrow { font-size:16px; margin-bottom:2px; }
.tech-dlo-dir-name { font-size:13px; font-weight:700; }
.tech-dlo-dir-eng { font-size:8px; margin-top:2px; letter-spacing:1.5px; color:#334466; }

.tech-dlo-submit {
  width:100%; padding:11px; border-radius:8px;
  font-size:12px; font-weight:700; letter-spacing:.5px;
  cursor:pointer; transition:all .3s; border:none;
}
.tech-dlo-submit.pending { background:rgba(14,24,48,.8); color:#505070; cursor:default; }
.tech-dlo-submit.ready {
  background:linear-gradient(135deg,#a78bfa,#7c5cff); color:#fff;
  box-shadow:0 4px 16px rgba(124,92,255,.3);
}
.tech-dlo-submit.ready:hover { box-shadow:0 4px 24px rgba(124,92,255,.5); transform:translateY(-1px); }
.tech-dlo-submit.submitted {
  background:rgba(255,200,0,.08); border:1px solid rgba(255,200,0,.2);
  color:#ffc800; cursor:default;
}

/* Result */
.tech-dlo-result {
  padding:12px 14px; display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:6px;
}
.tech-dlo-result-win { background:rgba(0,232,160,.04); }
.tech-dlo-result-lose { background:rgba(255,56,96,.03); }
.tech-dlo-result-msg { font-size:12px; font-weight:600; }
.tech-dlo-win { color:#00e8a0; }
.tech-dlo-lose { color:#ff3860; }
.tech-dlo-result-detail { font-size:9px; color:#505070; margin-top:2px; }

/* Stats */
.tech-dlo-stats {
  display:grid; grid-template-columns:1fr; gap:5px;
  padding:0 14px 10px;
}
.tech-dlo-stat-box {
  text-align:center; padding:8px 3px;
  border-radius:6px; background:rgba(3,6,15,.4); border:1px solid rgba(124,92,255,.06);
}
.tech-dlo-stat-label { font-size:8px; color:#334466; letter-spacing:1px; text-transform:uppercase; margin-bottom:2px; }
.tech-dlo-stat-val { font-family:'Orbitron',monospace; font-size:14px; font-weight:700; }

/* Records */
.tech-dlo-rec { border-top:1px solid rgba(124,92,255,.06); }
.tech-dlo-rec-head {
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 14px;
}
.tech-dlo-rec-title { font-size:11px; font-weight:600; display:flex; align-items:center; gap:6px; }
.tech-dlo-rec-dot { width:5px; height:5px; border-radius:50%; background:#7c5cff; display:inline-block; }
.tech-dlo-rec-count { font-size:9px; color:#334466; font-family:'Orbitron',monospace; }
.tech-dlo-rec-table { width:100%; border-collapse:collapse; }
.tech-dlo-rec-table th {
  text-align:left; padding:7px 10px;
  font-size:8px; font-weight:600; letter-spacing:1px;
  text-transform:uppercase; color:#334466;
  border-bottom:1px solid rgba(124,92,255,.06); background:rgba(3,6,15,.4);
}
.tech-dlo-rec-table td {
  padding:8px 10px; font-size:10px;
  border-bottom:1px solid rgba(124,92,255,.04); color:#a0a0c0;
}
.tech-dlo-rec-table tr:last-child td { border-bottom:none; }
.tech-dlo-rec-table tr:hover td { background:rgba(124,92,255,.03); }
.tech-dlo-rec-b { display:inline-flex; align-items:center; gap:2px; padding:2px 6px; border-radius:4px; font-size:9px; font-weight:600; font-family:'Orbitron',monospace; }
.tech-dlo-rec-b.bull { background:rgba(0,232,160,.08); color:#00e8a0; }
.tech-dlo-rec-b.red { background:rgba(255,56,96,.08); color:#ff3860; }
.tech-dlo-res-win { color:#00e8a0; font-weight:700; font-size:10px; }
.tech-dlo-res-lose { color:#ff3860; font-weight:700; font-size:10px; }
