/* CRT-SEM Widgets v2.1 — light background design */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300&family=DM+Mono:wght@300;400;500&family=Outfit:wght@300;400;500;600&display=swap');

/* ── Loading ──────────────────────────────────────────────────────────────── */
.crtsem-loading { display:flex !important; align-items:center !important; justify-content:center !important; min-height:100px !important; }
.crtsem-spinner { width:26px !important; height:26px !important; border:2px solid rgba(201,168,76,0.2) !important; border-top-color:#C9A84C !important; border-radius:50% !important; animation:crtsem-spin 0.8s linear infinite !important; }
@keyframes crtsem-spin { to { transform:rotate(360deg); } }
.crtsem-error { color:#888 !important; font-size:0.85rem !important; text-align:center !important; padding:1rem !important; }

/* ── Live dot ─────────────────────────────────────────────────────────────── */
.crtsem-live-dot { width:7px !important; height:7px !important; border-radius:50% !important; background:#3ddc84 !important; animation:crtsem-pulse 2s ease-in-out infinite !important; display:inline-block !important; flex-shrink:0 !important; }
@keyframes crtsem-pulse { 0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(1.4)} }

/* ── Bias widget ──────────────────────────────────────────────────────────── */
#crtsem-bias-widget { background:#fff !important; border:1px solid #e0e0e0 !important; border-radius:6px !important; overflow:hidden !important; font-family:'DM Mono',monospace !important; }

/* Top bar */
#crtsem-bias-widget .crtsem-bias-topbar { display:flex !important; justify-content:space-between !important; align-items:flex-start !important; padding:0.85rem 1.25rem !important; border-bottom:1px solid #f0f0f0 !important; background:#fafafa !important; }
#crtsem-bias-widget .crtsem-bias-topbar-left { display:flex !important; flex-direction:column !important; gap:0.2rem !important; }
#crtsem-bias-widget .crtsem-bias-run { font-size:0.6rem !important; letter-spacing:0.18em !important; text-transform:uppercase !important; color:#888 !important; }
#crtsem-bias-widget .crtsem-bias-updated { font-size:0.55rem !important; color:#bbb !important; }
#crtsem-bias-widget .crtsem-bias-pair { font-size:0.65rem !important; letter-spacing:0.12em !important; color:#888 !important; text-align:right !important; }

/* Hero — big centered arrow + name */
#crtsem-bias-widget .crtsem-bias-hero { display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; padding:2.5rem 1.5rem 2rem !important; gap:0.5rem !important; }
#crtsem-bias-widget .crtsem-bias-hero-arrow { font-size:3.5rem !important; line-height:1 !important; }
#crtsem-bias-widget .crtsem-bias-hero-name { font-family:'Cormorant Garamond',Georgia,serif !important; font-size:2.8rem !important; font-weight:400 !important; letter-spacing:0.05em !important; }
#crtsem-bias-widget .crtsem-bias-hero-arrow.bullish,
#crtsem-bias-widget .crtsem-bias-hero-name.bullish { color:#22c55e !important; }
#crtsem-bias-widget .crtsem-bias-hero-arrow.bearish,
#crtsem-bias-widget .crtsem-bias-hero-name.bearish { color:#ef4444 !important; }
#crtsem-bias-widget .crtsem-bias-hero-arrow.sideways,
#crtsem-bias-widget .crtsem-bias-hero-name.sideways { color:#f59e0b !important; }

/* Lanes row */
#crtsem-bias-widget .crtsem-bias-lanes { display:grid !important; grid-template-columns:repeat(3,1fr) !important; border-top:1px solid #f0f0f0 !important; }
#crtsem-bias-widget .crtsem-bias-lane { padding:0.85rem 0.5rem !important; text-align:center !important; background:#fafafa !important; }
#crtsem-bias-widget .crtsem-bias-lane-border { border-right:1px solid #f0f0f0 !important; }
#crtsem-bias-widget .crtsem-lane-label { display:block !important; font-size:0.52rem !important; letter-spacing:0.18em !important; text-transform:uppercase !important; color:#bbb !important; margin-bottom:0.35rem !important; }
#crtsem-bias-widget .crtsem-lane-val { display:block !important; font-size:0.9rem !important; font-weight:500 !important; letter-spacing:0.05em !important; }
#crtsem-bias-widget .crtsem-lane-val.long    { color:#22c55e !important; }
#crtsem-bias-widget .crtsem-lane-val.short   { color:#ef4444 !important; }
#crtsem-bias-widget .crtsem-lane-val.wait    { color:#f59e0b !important; }
#crtsem-bias-widget .crtsem-lane-val.notrade { color:#bbb !important; }

/* Reason box */
#crtsem-bias-widget .crtsem-bias-reason { font-size:0.8rem !important; color:#555 !important; line-height:1.6 !important; padding:1rem 1.25rem !important; border-top:1px solid #f0f0f0 !important; background:#fff !important; font-family:'Outfit',sans-serif !important; font-weight:300 !important; }

/* ── 4-card bias grid ─────────────────────────────────────────── */
#crtsem-bias-widget .crtsem-bias-header { display:flex !important; align-items:center !important; gap:0.6rem !important; padding:0.7rem 0.25rem 0.6rem !important; flex-wrap:wrap !important; }
#crtsem-bias-widget .crtsem-bias-pair-label { font-size:0.75rem !important; font-weight:600 !important; letter-spacing:0.12em !important; color:#888 !important; text-transform:uppercase !important; }
#crtsem-bias-widget .crtsem-bias-session-tag { font-size:0.6rem !important; background:rgba(201,168,76,0.15) !important; color:#c9a84c !important; padding:2px 7px !important; border-radius:3px !important; letter-spacing:0.1em !important; text-transform:uppercase !important; }
#crtsem-bias-widget .crtsem-bias-updated-tag { font-size:0.55rem !important; color:#bbb !important; margin-left:auto !important; }
#crtsem-bias-widget .crtsem-tf-grid { display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:0.5rem !important; padding:0 0 0.75rem !important; }
#crtsem-bias-widget .crtsem-tf-card { background:rgba(0,0,0,0.03) !important; border-radius:5px !important; padding:0.85rem 0.5rem !important; text-align:center !important; display:flex !important; flex-direction:column !important; align-items:center !important; gap:0.25rem !important; transition:opacity .2s !important; }
#crtsem-bias-widget .crtsem-tf-card--empty { opacity:0.35 !important; }
#crtsem-bias-widget .crtsem-tf-label { font-size:0.52rem !important; letter-spacing:0.18em !important; text-transform:uppercase !important; color:#aaa !important; margin-bottom:0.15rem !important; }
#crtsem-bias-widget .crtsem-tf-arrow { font-size:1.6rem !important; line-height:1 !important; }
#crtsem-bias-widget .crtsem-tf-bias { font-family:'Cormorant Garamond',Georgia,serif !important; font-size:1.1rem !important; font-weight:400 !important; letter-spacing:0.04em !important; }
#crtsem-bias-widget .crtsem-tf-decision { font-size:0.65rem !important; font-weight:600 !important; letter-spacing:0.1em !important; text-transform:uppercase !important; margin-top:0.1rem !important; }
#crtsem-bias-widget .crtsem-tf-age { font-size:0.48rem !important; color:#bbb !important; margin-top:0.2rem !important; }
@media (max-width:480px) {
  #crtsem-bias-widget .crtsem-tf-grid { grid-template-columns:repeat(2,1fr) !important; }
}

/* ── Signals grid ─────────────────────────────────────────────────────────── */
#crtsem-signals-widget .crtsem-signals-grid { display:grid !important; grid-template-columns:repeat(3,1fr) !important; gap:1rem !important; }
@media (max-width:900px) { #crtsem-signals-widget .crtsem-signals-grid { grid-template-columns:repeat(2,1fr) !important; } }
@media (max-width:560px) { #crtsem-signals-widget .crtsem-signals-grid { grid-template-columns:1fr !important; } }

/* ── Clocks grid ──────────────────────────────────────────────────────────── */
#crtsem-clocks-widget .crtsem-clocks-grid { display:grid !important; grid-template-columns:repeat(7,1fr) !important; gap:0.75rem !important; }
@media (max-width:1100px) { #crtsem-clocks-widget .crtsem-clocks-grid { grid-template-columns:repeat(4,1fr) !important; } }
@media (max-width:700px)  { #crtsem-clocks-widget .crtsem-clocks-grid { grid-template-columns:repeat(2,1fr) !important; } }

#crtsem-clocks-widget .crtsem-clock-card { background:#fff !important; border:1px solid #e8e8e8 !important; border-radius:4px !important; padding:0.85rem 0.5rem !important; text-align:center !important; display:flex !important; flex-direction:column !important; align-items:center !important; gap:0.4rem !important; }
#crtsem-clocks-widget .crtsem-clock-card.open  { border-color:rgba(34,197,94,0.4) !important; box-shadow:0 0 0 1px rgba(34,197,94,0.1) !important; }
#crtsem-clocks-widget .crtsem-clock-card.closed { opacity:0.55 !important; }
#crtsem-clocks-widget .crtsem-clock-face { width:52px !important; height:52px !important; display:block !important; }
#crtsem-clocks-widget .crtsem-clock-svg { width:100% !important; height:100% !important; display:block !important; }
#crtsem-clocks-widget .crtsem-city { font-family:'Outfit',sans-serif !important; font-size:0.72rem !important; font-weight:500 !important; color:#333 !important; }
#crtsem-clocks-widget .crtsem-clock-time { font-family:'DM Mono',monospace !important; font-size:1rem !important; font-weight:500 !important; color:#111 !important; }
#crtsem-clocks-widget .crtsem-clock-date { font-family:'DM Mono',monospace !important; font-size:0.6rem !important; color:#aaa !important; }
#crtsem-clocks-widget .crtsem-session-badge { font-family:'DM Mono',monospace !important; font-size:0.5rem !important; letter-spacing:0.1em !important; text-transform:uppercase !important; padding:0.1rem 0.35rem !important; border-radius:2px !important; }
#crtsem-clocks-widget .crtsem-session-badge.open   { color:#22c55e !important; background:rgba(34,197,94,0.08) !important; border:1px solid rgba(34,197,94,0.25) !important; }
#crtsem-clocks-widget .crtsem-session-badge.closed { color:#aaa !important; background:#f9f9f9 !important; border:1px solid #e8e8e8 !important; }
