*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#eff1fa;color:#0b174f;font-family:Arial,Helvetica,sans-serif;font-style:italic;font-weight:700}.page-shell{width:min(100%,420px);margin:auto;background:#e5e2ff;min-height:100vh;padding:5px 5px 72px;border-left:2px solid #7700ff;border-right:2px solid #7700ff}.purple-head,.section-title,.announcement.thin{background:linear-gradient(180deg,#a000ff 0%,#47009c 53%,#170047 100%);color:#fff;text-shadow:1px 2px #150032;text-align:center;border-radius:14px;padding:9px 6px;border:2px solid #fff;box-shadow:0 0 0 1px #6c00e8;font-size:23px;line-height:1.12}.purple-head{margin-bottom:6px}.announcement{background:#d8d4ff;border:2px solid #8400ff;border-radius:12px;text-align:center;padding:9px 7px;margin:6px 0;font-size:15px}.announcement small{font-size:12px}.announcement.thin{font-size:16px}.section-box{border:2px solid #8200ff;border-radius:13px;overflow:hidden;margin:7px 0;background:#e5e2ff}.section-title{border-radius:11px;margin:0;font-size:20px}.live-item{text-align:center;border-bottom:1px solid #8a00ff;padding:5px 5px 7px;min-height:82px}.live-item:last-child{border-bottom:0}.live-item h3,.market-row h3{font-size:20px;margin:0;line-height:1.15}.number{font-size:22px;color:#990044;margin:3px 0;overflow-wrap:anywhere}.small-btn,.side-link{background:#391073;color:#fff;border:0;border-radius:6px;padding:5px 8px;font-size:12px;font-weight:700;text-decoration:none;cursor:pointer;font-style:normal}.market-row{display:flex;align-items:center;justify-content:space-between;gap:5px;border-bottom:1px solid #e34b85;padding:6px 9px;min-height:75px}.market-row:last-child{border-bottom:0}.market-middle{text-align:center;min-width:0;flex:1}.market-middle h3{font-size:19px}.time-line{font-size:12px;color:#1c1639}.side-link{flex-shrink:0;font-size:11px}.table-heading{margin:5px 4px 0;padding:6px 3px;background:linear-gradient(#8500f3,#24004f);color:white;border-radius:12px;text-align:center;font-size:20px}.result-table{border-collapse:collapse;width:100%;font-size:13px;text-align:center;margin:4px 0 0}.result-table th,.result-table td{border:1px solid #8200ff;padding:5px 3px}.result-table th{background:#fff}.result-table tbody tr:nth-child(even){background:#d5d0ff}.strong-number{color:#65003f}.more-link{display:block;text-align:center;padding:9px;color:#380088;font-size:12px}.info-grid{display:grid;grid-template-columns:1fr 1fr}.info-tile{display:flex;min-height:100px;flex-direction:column;justify-content:center;align-items:center;gap:8px;text-align:center;padding:9px 5px;text-decoration:none;color:#12114f;border:1px solid #8d00ff}.info-tile strong{background:linear-gradient(#9100f1,#21004b);color:#fff;border-radius:10px;padding:8px 4px;width:100%;font-size:15px}.info-tile span{font-size:11px}.support,.disclaimer{text-align:center;padding:10px;font-size:12px;line-height:1.45}.support h2,.disclaimer h2{font-size:18px;margin:0 0 5px}.support p,.disclaimer p{margin:0;font-weight:500;font-style:normal}.footer{text-align:center;font-size:17px;padding:12px}.footer small{font-size:10px}.empty{text-align:center;padding:20px 8px;font-size:13px}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,420px);display:flex;align-items:center;justify-content:space-between;padding:8px;background:#e5e2ffed;border-top:2px solid #8000ff;z-index:50}.bottom-nav a,.bottom-nav button{background:linear-gradient(#6800bc,#14003f);border:0;color:white;text-decoration:none;border-radius:7px;padding:8px 10px;font:bold italic 12px Arial;cursor:pointer}@media(min-width:600px){.page-shell{box-shadow:0 0 18px #35006335}}@media(max-width:350px){.market-row h3{font-size:16px}.side-link{padding:5px}.purple-head{font-size:20px}}

.chart-cta{display:block;margin:9px 8px 12px;padding:12px 8px;border-radius:10px;background:linear-gradient(#8e00f5,#210052);color:white;text-align:center;text-decoration:none;font-size:17px;font-weight:bold;box-shadow:0 2px 5px #32004d55}

/* Individual market chart button, below its result/time */
.market-chart-link{display:block;width:calc(100% - 20px);margin:8px 10px 10px;text-align:center;box-sizing:border-box;}

/* v3: one centered chart link beneath each market's result and time */
.market-row{display:block;text-align:center;padding:8px 9px 10px}
.market-middle{width:100%}
.market-chart-link{display:block;width:min(100%,230px);margin:9px auto 1px;padding:9px 12px;font-size:14px}

.market-hours{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;font-size:13px;color:#16104a;margin:7px 0 3px;font-style:normal}.market-hours span{font-weight:700}

/* Public homepage: lightweight, accessible visual polish. */
@keyframes br-enter {from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes br-shimmer {0%,75%,100%{background-position:200% center}35%{background-position:-100% center}}
@keyframes br-icon-float {0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes br-soft-glow {0%,100%{box-shadow:0 0 0 1px #6c00e8,0 2px 7px #5200a033}50%{box-shadow:0 0 0 1px #6c00e8,0 2px 13px #8400ff66}}
body .page-shell > .purple-head{animation:br-soft-glow 5s ease-in-out infinite}
.page-shell > .purple-head .br-heading-text{display:inline-block;background:linear-gradient(105deg,#fff 30%,#ffdf86 47%,#fff 61%);background-size:240% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:br-shimmer 7s ease-in-out infinite}
.page-shell > .purple-head .br-site-icon{display:inline-block;animation:br-icon-float 3.5s ease-in-out infinite;filter:drop-shadow(0 2px 3px #0005)}
.page-shell > .section-box{animation:br-enter .42s ease-out both}
.page-shell > .section-box:nth-of-type(3){animation-delay:.08s}
.page-shell > .section-box:nth-of-type(4){animation-delay:.13s}
.page-shell .number{font-weight:900;letter-spacing:.35px}
.page-shell .chart-cta,.page-shell .small-btn,.page-shell .side-link,.page-shell .info-tile{transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
@media(hover:hover){.page-shell .chart-cta:hover,.page-shell .small-btn:hover,.page-shell .side-link:hover{transform:translateY(-2px);filter:brightness(1.12);box-shadow:0 4px 12px #37006044}.page-shell .info-tile:hover{filter:brightness(1.04)}}
.page-shell .chart-cta:active,.page-shell .small-btn:active,.page-shell .side-link:active{transform:scale(.98)}
@media(prefers-reduced-motion:reduce){.page-shell > .purple-head,.page-shell > .purple-head .br-heading-text,.page-shell > .purple-head .br-site-icon,.page-shell > .section-box{animation:none!important}.page-shell .chart-cta,.page-shell .small-btn,.page-shell .side-link,.page-shell .info-tile{transition:none!important}}


/* Welcome banner and readable, subtle heading animation */
@keyframes br-gentle-sway {0%,100%{transform:rotate(0deg)}25%{transform:rotate(-0.65deg)}75%{transform:rotate(0.65deg)}}
@keyframes br-color-sweep {0%,12%,70%,100%{background-position:200% center}35%,48%{background-position:-200% center}}
.page-shell > .purple-head .br-heading-text{
  display:inline-block;color:#fff;
  background:linear-gradient(100deg,#ffffff 0%,#ffffff 28%,#ffe66b 44%,#f5b0ff 52%,#ffffff 66%,#ffffff 100%);
  background-size:260% 100%;background-clip:text;-webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  animation:br-color-sweep 6s linear infinite,br-gentle-sway 5s ease-in-out infinite;
  text-shadow:none;filter:drop-shadow(0 1px 1px #1b004c);
}
.br-welcome-banner{display:flex;align-items:center;gap:12px;margin:7px 0;padding:10px 11px;background:#d8d4ff;border:2px solid #8400ff;border-radius:12px;min-height:108px}
.br-welcome-icon,.br-welcome-placeholder{flex:0 0 86px;width:86px;height:86px;object-fit:contain;border-radius:12px;filter:drop-shadow(0 2px 4px #35005b44);animation:br-icon-float 4s ease-in-out infinite}
.br-welcome-placeholder{display:grid;place-items:center;background:linear-gradient(#a000ff,#330066);color:#fff;font:900 30px Arial}
.br-welcome-copy{flex:1;min-width:0;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;font-style:normal}
.br-welcome-title{font:900 clamp(16px,4.4vw,20px)/1.18 Arial,sans-serif;color:#29005e;letter-spacing:.2px}
.br-welcome-subtitle{font:900 17px/1.15 Arial,sans-serif;color:#87009b}
.br-welcome-caption{font:700 11px/1.3 Arial,sans-serif;color:#33315b}
@media(max-width:350px){.br-welcome-banner{gap:8px;padding:8px}.br-welcome-icon,.br-welcome-placeholder{flex-basis:72px;width:72px;height:72px}.br-welcome-title{font-size:15px}}
@media(prefers-reduced-motion:reduce){.page-shell > .purple-head .br-heading-text,.br-welcome-icon,.br-welcome-placeholder{animation:none!important}.page-shell > .purple-head .br-heading-text{-webkit-text-fill-color:#fff;color:#fff}}
