/* Shared page styles extracted from inline <style> blocks. */

/* Typography & icons — applied on every page */
body { font-family: 'Outfit', sans-serif; }
b, strong, .font-bold, .font-extrabold, .font-black, .font-semibold { letter-spacing: 0.01em; }
.material-symbols-outlined { font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24; }

/* Number inputs — remove browser spinners */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
input[type=number] { -moz-appearance: textfield; }

/* === index.html === */
.glass-panel { background: rgba(248,250,249,0.7); backdrop-filter: blur(20px); }
.chain-pill { transition: all 0.15s ease; }
.chain-pill:hover { transform: translateY(-1px); box-shadow: 0 2px 8px rgba(0,0,0,0.08); }
.scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; }
.scrollbar-hide::-webkit-scrollbar { display: none; }
.asset-card { transition: all 0.2s ease; }
.asset-card:hover { transform: translateY(-2px); box-shadow: 0 8px 30px rgba(42,52,52,0.08); }
@media (min-width: 1024px) {
  #portfolio-grid { display: block; padding-right: 344px; }
  #portfolio-grid > div:first-child { max-width: 900px; margin-left: auto; margin-right: auto; }
  #portfolio-sidebar { position: fixed; right: 0; top: 5rem; width: 320px; max-height: calc(100vh - 5rem); overflow-y: auto; padding: 0.25rem 0.75rem 2rem 0.5rem; }
}
@media (min-width: 1280px) {
  #portfolio-grid { padding-right: 408px; }
  #portfolio-sidebar { width: 384px; }
}

/* === bridge.html === */
html { height: 100%; }
.bridge-spacer-lg { margin-bottom: 1.25rem; }
.bridge-spacer-sm { margin-bottom: 0.75rem; }
.bridge-spacer-divider { margin-top: 1.25rem; margin-bottom: 1.25rem; }
.bridge-amount { font-size: 3rem; }
.compact .bridge-spacer-lg { margin-bottom: 0.5rem; }
.compact .bridge-spacer-sm { margin-bottom: 0.375rem; }
.compact .bridge-spacer-divider { margin-top: 0.5rem; margin-bottom: 0.5rem; }
.compact .bridge-amount { font-size: 2.25rem; }
.compact { padding-top: 0.75rem; padding-bottom: 0.75rem; }
/* countdown bar initial state (replaces inline style="width:100%") */
#tx-countdown-bar { width: 100%; }

/* === brand.html === */
.color-swatch { height: 3.5rem; border-radius: 0.75rem; }
.swatch-sage-green  { background: #94B186; }
.swatch-sage-light  { background: #9DBA96; }
.swatch-dark-base   { background: #1a1f1a; }
.swatch-light-base  { background: #FFFFFF; border: 1px solid rgba(0,0,0,0.1); }

/* === radar.html === */
@keyframes shimmer { 0% { background-position: -200% 0; } 100% { background-position: 200% 0; } }
.skeleton {
  background: linear-gradient(90deg, #eaefe5 25%, #f2f5ef 50%, #eaefe5 75%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
  border-radius: 0.5rem;
}
@keyframes pulse-dot { 0%, 100% { opacity: 1; } 50% { opacity: 0.4; } }
.live-dot { animation: pulse-dot 2s ease-in-out infinite; }
