:root { --creator-blue: #0032a0; --bright-blue: #00a9e0; --accent-orange: #ff8200; --yellow: #ffd100; --green: #43b02a; --red: #da291c; --cool-gray: #8c8c8c; /* Chosen cool gray */ } /* Overall dashboard container */ #dashboard { max-width: 1200px; margin: 2rem auto; padding: 0 1rem; display: flex; flex-direction: column; gap: 2rem; } /* Dashboard group header */ .dashboard-group h2 { font-size: 1.5em; margin-bottom: 1rem; padding-left: 0.5rem; font-weight: 600; color: var(--creator-blue); border-left: 5px solid var(--creator-blue); } /* Dashboard groups container */ .dashboard-group { display: flex; gap: 1.5rem; flex-direction: column; } .dashboard-group h2 { font-size:2.8em !important; } /* Metric tile styling */ .metric-tile { /* flex: 1 1 100px; */ background: #ffffff; padding: 1.5em; border-radius: 12px; border: 1px solid rgba(140, 140, 140, 0.2); box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); transition: transform 0.2s ease, box-shadow 0.2s ease; display: flex; flex-direction: column; cursor: pointer; min-width: 300px; } .metric-tile:hover { transform: translateY(-3px); box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15); } /* Tile header */ .tile-header { display: flex; flex-direction: column; gap: 0.5rem; } .tile-header h3 { font-size: 1.3em; font-weight: 700; margin: 0; color: var(--creator-blue); } /* Value display styling */ .tile-value { font-size: 1.8em; font-weight: 600; display: flex; align-items: center; gap: 0.5rem; color: var(--cool-gray); } .tile-name{ font-size: 1.8em; } /* Up and down delta styles */ .tile-delta.up { color: var(--green); } .tile-delta.down { color: var(--red); } /* Chart container styling */ .tile-chart { margin-top: 1rem; position: relative; } .tile-chart.hidden { display: none; } /* Canvas styling */ .tile-chart canvas { width: 100% !important; height: 445px !important; border-radius: 8px; background: #fafafa; border: 1px solid rgba(140, 140, 140, 0.2); } /* Collapse button styling */ .collapse-chart { margin-top: 0.5rem; background: var(--accent-orange); color: #fff; padding: 0.3rem 0.75rem; border: none; border-radius: 6px; cursor: pointer; align-self: flex-end; transition: background 0.2s ease; width: 40px; } .collapse-chart:hover { background: #e66b00; /* Slightly darker orange */ } /* ticker */ /* Ticker container styling */ /* Ticker container styling */ #dashboard-ticker { width: 90%; overflow: hidden; background: #f2f2f2; /* Light gray */ border-radius: 10px; border: 1px solid #ddd; padding: 0.6em 1em; margin-bottom: 1rem; box-sizing: border-box; margin-left: auto; margin-right: auto; } /* No animation by default so it only starts after data is loaded (see .animate) */ #ticker-inner { display: inline-block; white-space: nowrap; } /* Once we add .animate, the ticker scrolls from 0% to -100% */ #ticker-inner.animate { animation: ticker-scroll 60s linear infinite; /* 30s => slower speed */ } /* Ticker item styling */ .ticker-item { display: inline-block; margin-right: 2em; font-size: 1.5em; cursor: pointer; white-space: nowrap; /* height: 29px; */ vertical-align: bottom; } /* Delta up/down colors */ .ticker-delta.up { color: green; } .ticker-delta.down { color: red; } /* Keyframes: start at 0% (fully visible) => move left => jump back */ @keyframes ticker-scroll { 0% { transform: translateX(20%); } 100% { transform: translateX(-100%); } } /* Mobile devices: lengthen the animation for an even slower scroll */ @media (max-width: 600px) { #ticker-inner.animate { animation-duration: 50s; } }