/* ShaFX unified main stylesheet */
@import url('/assets/css/base.css');
@import url('/assets/css/theme.css');
@import url('/assets/css/components.css');
@import url('/assets/css/header-footer.css');
@import url('/assets/css/mobile-consistency.css');
@import url('/assets/css/ux-fixes.css');
@import url('/assets/css/home-polish.css');

/* Global layout helpers */
:root{
  --header-h: 64px;
  --container: 1100px;
}
html, body { height:100%; }
body.app-shell{ padding-top: var(--header-h); }
.container{ max-width: var(--container); margin:0 auto; padding:0 16px; }

/* Header sizing safeguard (prevents huge logo) */
.shafx-header{ position:sticky; top:0; z-index:10000; background: rgba(25,29,52,.92); backdrop-filter: blur(10px); border-bottom: 1px solid rgba(255,255,255,.08); }
.shafx-header-inner{ display:flex; align-items:center; gap:14px; justify-content:space-between; min-height: var(--header-h); }
.shafx-brand{ display:flex; align-items:center; gap:10px; text-decoration:none; color:inherit; }
.shafx-logo{ height:44px; width:auto; display:block; }
.shafx-brand-name{ font-weight:800; letter-spacing:.2px; }
.shafx-nav{ display:flex; gap:14px; align-items:center; }
.shafx-nav a{ color: rgba(255,255,255,.92); text-decoration:none; font-weight:700; font-size:14px; padding:10px 10px; border-radius:12px; }
.shafx-nav a:hover{ background: rgba(255,255,255,.06); }
.shafx-burger{ display:none; width:44px; height:44px; border-radius:14px; border:1px solid rgba(255,255,255,.10); background: rgba(255,255,255,.04); }
.shafx-burger span{ display:block; height:2px; width:18px; background: rgba(255,255,255,.9); margin:4px auto; border-radius:99px; }

@media (max-width: 860px){
  .shafx-burger{ display:inline-flex; align-items:center; justify-content:center; flex-direction:column; gap:0; }
  .shafx-nav{ position:fixed; top: calc(env(safe-area-inset-top) + var(--header-h)); right: 14px; left: 14px;
    background: rgba(25,29,52,.98); border:1px solid rgba(255,255,255,.10); border-radius:18px; padding:12px; display:none;
    flex-direction:column; align-items:stretch; gap:6px; z-index:10001;
  }
  body.nav-open .shafx-nav{ display:flex; }
  .shafx-nav a{ padding:12px 12px; }
}

/* Footer */
.shafx-footer{ background: rgba(0,0,0,.12); border-top:1px solid rgba(255,255,255,.08); padding: 28px 0; margin-top: 32px; }
.shafx-footer-grid{ display:grid; grid-template-columns: 1.6fr 1fr 1fr; gap:18px; align-items:start; }
.shafx-footer-brand{ display:flex; gap:12px; align-items:center; }
.shafx-footer-brand img{ height:42px; width:auto; }
.shafx-footer-links{ display:flex; flex-direction:column; gap:10px; }
.shafx-footer-links a{ color: rgba(255,255,255,.86); text-decoration:none; font-weight:700; font-size:14px; }
.shafx-footer-links a:hover{ text-decoration:underline; }
.shafx-disclaimer{ margin-top:18px; padding:14px 14px; border-radius:16px; border:1px solid rgba(255,204,0,.25); background: rgba(255,204,0,.08); }
.shafx-disclaimer p{ margin:8px 0 0; color: rgba(255,255,255,.86); }
.shafx-footer-bottom{ margin-top:14px; color: rgba(255,255,255,.70); font-size:13px; }
@media (max-width: 860px){
  .shafx-footer-grid{ grid-template-columns: 1fr; }
}

/* Insights-card style for content pages (blog/about/services) */
.content-grid{ display:grid; grid-template-columns: repeat(12, 1fr); gap:14px; }
.content-card{ grid-column: 1 / -1; background: rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.10); border-radius:18px; padding:16px; }
@media (min-width: 900px){
  .content-card{ padding:22px; }
}

/* TradingView containers */
.tv-box{ min-height: 240px; border-radius:18px; overflow:hidden; border:1px solid rgba(255,255,255,.10); background: rgba(0,0,0,.10); }
.tv-mini{ min-height: 220px; }
.tv-loading{ padding:16px; color: rgba(255,255,255,.75); font-weight:700; }