.sffc-root{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:24px;align-items:start}.sffc-root.is-loading{opacity:.65;pointer-events:none}.sffc-calendar{border:1px solid #cfd2d8}.sffc-calendar__header{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;background:#000;color:#fff}.sffc-calendar__header h2{margin:0;padding:12px;text-align:center;font-size:1.1rem}.sffc-calendar__header button{height:100%;border:0;background:#000;color:#fff;font-size:1.6rem;cursor:pointer}.sffc-calendar__header button:disabled{opacity:.3;cursor:not-allowed}.sffc-calendar__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.sffc-weekday{padding:8px 4px;background:#000;color:#fff;text-align:center;font-weight:700}.sffc-day{min-width:0;min-height:125px;padding:5px;border:0;border-right:1px solid #d5d7dc;border-bottom:1px solid #d5d7dc;background:#fff;color:#111;text-align:left;cursor:pointer}.sffc-day:nth-child(7n+1),.sffc-day:nth-child(7n){background:#fafafa}.sffc-day--outside{opacity:.45}.sffc-day.is-selected{box-shadow:inset 0 0 0 2px #0016ff}.sffc-day__number{display:block;margin-bottom:4px;color:#777;text-align:right}.sffc-day__entries{display:grid;gap:3px}.sffc-entry{position:relative;display:block;min-width:0;box-sizing:border-box;padding:3px 5px;border-radius:3px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:1.35}.sffc-entry--trust{background:#666;color:#fff}.sffc-entry--merged-quarter{background:#0016ff;color:#fff}.sffc-entry--merged-year{background:#9daaff;color:#000}.sffc-entry--ipo-quarter{background:#000;color:#fff}.sffc-entry--ipo-year{background:#ddd;color:#000}.sffc-entry__watch{position:absolute;top:0;right:0;bottom:0;padding:2px 4px;background:#0016ff;color:#fff}.sffc-entry:before,.sffc-entry:after{content:"";position:absolute;left:0;right:0;height:2px;pointer-events:none}.sffc-entry:before{top:0}.sffc-entry:after{bottom:0}.sffc-top-bronze:before,.sffc-full-bronze:before,.sffc-full-bronze:after,.sffc-band--bronze{background:linear-gradient(90deg,#681f17,#e77b61,#b7432f,#e77b61,#681f17)}.sffc-top-silver:before,.sffc-full-silver:before,.sffc-full-silver:after,.sffc-band--silver{background:linear-gradient(90deg,#596673,#eef3f7,#9ca9b6,#eef3f7,#596673)}.sffc-top-gold:before,.sffc-full-gold:before,.sffc-full-gold:after,.sffc-band--gold{background:linear-gradient(90deg,#9b7900,#fff36a,#ffd000,#fff36a,#9b7900)}.sffc-bottom-bronze:after{background:linear-gradient(90deg,#681f17,#e77b61,#b7432f,#e77b61,#681f17)}.sffc-bottom-silver:after{background:linear-gradient(90deg,#596673,#eef3f7,#9ca9b6,#eef3f7,#596673)}.sffc-bottom-gold:after{background:linear-gradient(90deg,#9b7900,#fff36a,#ffd000,#fff36a,#9b7900)}.sffc-entry--loss:after{height:3px;background:repeating-linear-gradient(135deg,#d60000 0 3px,#ff8a8a 3px 6px)}.sffc-legend{display:flex;flex-wrap:wrap;gap:7px 10px;align-items:center;justify-content:center;padding:16px 0}.sffc-legend .sffc-entry{padding:3px 8px}.sffc-band{display:inline-block;padding:3px 8px;border-radius:3px;background-color:#fff;color:#000;font-size:12px}.sffc-loss-key{padding:3px 8px;border-bottom:3px solid transparent;border-image:repeating-linear-gradient(135deg,#d60000 0 3px,#ff8a8a 3px 6px) 1;font-size:12px}.sffc-details{min-width:0;border:1px solid #d4d7de;padding:12px}.sffc-details__date{margin-bottom:12px;font-size:1.15rem;font-weight:700;text-align:center}.sffc-empty{color:#687087;text-align:center}.sffc-card{margin-bottom:16px;border:1px solid #cfd3dd;border-radius:6px;overflow:hidden;background:#fff}.sffc-card__metrics{display:grid;grid-template-columns:1fr 1fr;background:#101331;color:#fff}.sffc-card__metrics>div{display:grid;gap:2px;padding:10px;text-align:center}.sffc-card__metrics>div+div{border-left:1px solid rgba(255,255,255,.3)}.sffc-card__metrics small,.sffc-card__metrics span{font-size:.78rem}.sffc-card__metrics strong{font-size:1rem}.sffc-card__metrics .is-loss strong{color:#ff8d8d}.sffc-card__metrics--trust{grid-template-columns:1fr}.sffc-card__common{display:flex;justify-content:space-between;gap:10px;padding:7px 10px;background:#f0f2f8;font-size:.82rem}.sffc-card__company{padding:8px}.sffc-card__company .center_table_div{max-width:100%}
@media(max-width:900px){.sffc-root{grid-template-columns:1fr}.sffc-details{order:2}.sffc-day{min-height:95px}.sffc-weekday{font-size:12px}.sffc-entry{padding-inline:3px}}
@media(max-width:600px){.sffc-calendar__grid{grid-template-columns:repeat(7,minmax(42px,1fr));overflow-x:auto}.sffc-day{min-height:82px;padding:3px}.sffc-entry{font-size:11px}.sffc-card__common{flex-direction:column;text-align:center}}
.sffc-full-bronze{box-shadow:inset 0 0 0 2px #b7432f}.sffc-full-silver{box-shadow:inset 0 0 0 2px #9ca9b6}.sffc-full-gold{box-shadow:inset 0 0 0 2px #ffd000}
.sffc-entry--loss.sffc-bottom-bronze:after{background:repeating-linear-gradient(135deg,rgba(190,0,0,.9) 0 3px,transparent 3px 6px),linear-gradient(90deg,#681f17,#e77b61,#b7432f,#e77b61,#681f17)}
.sffc-entry--loss.sffc-bottom-silver:after{background:repeating-linear-gradient(135deg,rgba(190,0,0,.9) 0 3px,transparent 3px 6px),linear-gradient(90deg,#596673,#eef3f7,#9ca9b6,#eef3f7,#596673)}
.sffc-entry--loss.sffc-bottom-gold:after{background:repeating-linear-gradient(135deg,rgba(190,0,0,.9) 0 3px,transparent 3px 6px),linear-gradient(90deg,#9b7900,#fff36a,#ffd000,#fff36a,#9b7900)}
.sffc-day:nth-child(7n+1){background:#fff}.sffc-day:nth-child(7n+6),.sffc-day:nth-child(7n){background:#fafafa}.sffc-day:disabled{cursor:default}

/* Event-calendar visual system, with financial-specific colours and borders. */
.sffc-root{grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:32px;font-family:sans-serif}
.sffc-calendar{border:0}
.sffc-calendar__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;background:#fff;color:#000}
.sffc-calendar__header h2{margin:0;padding:0;color:#000!important;font-size:18px;line-height:1.4;font-weight:700}
.sffc-calendar__header button{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:auto;padding:5px 10px;border:0;border-radius:999px;background:#0018ff;color:#fff;font-size:18px;line-height:1;cursor:pointer}
.sffc-calendar__header button:disabled{background:#0018ff;color:#fff;opacity:.3;cursor:not-allowed}
.sffc-calendar__grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;border:2px solid #000;background:#ccc}
.sffc-weekday{padding:8px 0;background:#000!important;color:#fff;font-weight:700;text-align:center}
.sffc-day,.sffc-day:nth-child(7n+1),.sffc-day:nth-child(7n+6),.sffc-day:nth-child(7n){display:block;position:relative;min-width:0;min-height:80px;box-sizing:border-box;padding:4px;border:0;border-radius:0;background:#fff;color:#111;font:inherit;text-align:left;cursor:pointer}
.sffc-day:hover{background:#f9f9f9}.sffc-day--outside,.sffc-day--outside:nth-child(n){background:#f3f3f3}.sffc-day:disabled,.sffc-day:disabled:nth-child(n){background:#ececec;opacity:.55;cursor:not-allowed}.sffc-day.is-selected{box-shadow:inset 0 0 15px #0016ff4d}
.sffc-day__number{margin:0;color:#888;font-size:12px;line-height:1.4;text-align:right}.sffc-day--outside .sffc-day__number{color:#aaa}.sffc-day__entries{display:block}
.sffc-entry{margin-top:3px;padding:2px 3px;border-radius:3px;font-size:12px;line-height:1.4}
.sffc-entry__watch{top:1px;right:0;bottom:1px;padding:0 3px;border:1px solid #0016ff;border-radius:3px}
.sffc-legend{gap:8px 12px;margin-top:20px;padding:20px 0;font-size:13px}.sffc-legend .sffc-entry{display:inline-block;margin:0;padding:2px 6px}
.sffc-details{min-width:0;max-height:720px;box-sizing:border-box;overflow-y:auto;border:2px solid #000;background:#fdfdfd;padding:5px}
.sffc-details__date{margin:0 0 10px;padding:4px;font-size:1.2em;font-weight:700;text-align:center}.sffc-empty{padding:8px;color:#111;text-align:left}
.sffc-card{margin-bottom:12px;border:1px solid #cfd3dd;border-radius:0;background:#fff}.sffc-card__metrics>div{padding:8px}.sffc-card__company{padding:5px}
.sffc-card__company .spacstar-event-stock-view .info_div{width:100%!important;max-width:100%!important;padding-right:0!important}
.sffc-card__company .info_date_div,.sffc-card__company .info_status_div{box-sizing:border-box;white-space:nowrap}
.sffc-card__company .info_date_div{clear:both;float:left!important;width:70%!important}
.sffc-card__company .info_status_div{float:right!important;text-align:right;width:30%!important}
.sffc-entry--trust-quarter{background:#666;color:#fff}
.sffc-entry--trust-year{background:#a4a4a4;color:#000}
.sffc-card__trust-panel--year .sffc-card__metrics{background:#080a20}
@media(max-width:1040px){.sffc-root{grid-template-columns:1fr;gap:20px}.sffc-details{max-height:none}}
@media(max-width:600px){.sffc-day{min-height:80px;padding:3px}}

/* Match the two titled columns and cell states of the Event Calendar. */
.sffc-column{min-width:0}
.sffc-section-title{margin:0 0 15px!important;padding:14px 18px!important;background:linear-gradient(90deg,#03030c 0%,#170078 100%);color:#fff!important;font-size:2rem!important;font-weight:400!important;line-height:1.2!important;text-align:center}
.sffc-day,.sffc-day:hover,.sffc-day:focus,.sffc-day:active{display:block!important;align-content:start!important;align-items:initial!important;justify-content:initial!important;vertical-align:top!important;color:#111!important}
.sffc-day.is-selected,.sffc-day.is-selected:hover,.sffc-day.is-selected:focus{background:#fff!important;box-shadow:inset 0 0 15px #0016ff4d!important}
.sffc-day--outside,.sffc-day--outside:hover{background:#f3f3f3!important}
.sffc-day--outside.is-selected{background:#f3f3f3!important}
.sffc-day:disabled,.sffc-day:disabled:hover{background:#ececec!important;opacity:.55}
.sffc-day__number,.sffc-day__entries{display:block!important;width:100%!important;align-self:start!important}

/* Legend samples show the same split edge used in calendar chips. */
.sffc-band{position:relative;box-sizing:border-box;overflow:hidden;background:#fff!important;color:#000!important;border:1px solid #ddd}
.sffc-band::before,.sffc-band::after{content:"";position:absolute;right:0;left:0;height:2px;pointer-events:none}
.sffc-band::before{top:0}.sffc-band::after{bottom:0}
.sffc-band--top.sffc-band--bronze::before,.sffc-band--bottom.sffc-band--bronze::after{background:linear-gradient(90deg,#681f17,#e77b61,#b7432f,#e77b61,#681f17)}
.sffc-band--top.sffc-band--silver::before,.sffc-band--bottom.sffc-band--silver::after{background:linear-gradient(90deg,#596673,#eef3f7,#9ca9b6,#eef3f7,#596673)}
.sffc-band--top.sffc-band--gold::before,.sffc-band--bottom.sffc-band--gold::after{background:linear-gradient(90deg,#9b7900,#fff36a,#ffd000,#fff36a,#9b7900)}

@media(max-width:1040px){.sffc-section-title{font-size:1.65rem!important}}

/* Explicit calendar states; these override theme button alignment and colours. */
.sffc-day,.sffc-day:hover,.sffc-day:focus,.sffc-day:active{
  display:grid!important;
  grid-template-rows:max-content max-content!important;
  align-content:start!important;
  align-items:start!important;
  justify-content:stretch!important;
}
.sffc-day__number{grid-row:1;align-self:start!important}
.sffc-day__entries{grid-row:2;align-self:start!important}
.sffc-day--outside,.sffc-day--outside:hover,.sffc-day--outside:focus,
.sffc-day--weekend,.sffc-day--weekend:hover,.sffc-day--weekend:focus{
  background:#f9f9f9!important;
  opacity:1!important;
}
.sffc-day.is-selected,.sffc-day.is-selected:hover,.sffc-day.is-selected:focus{
  background:#fff!important;
  box-shadow:inset 0 0 15px #0016ff4d!important;
}
.sffc-day--weekend.is-selected,.sffc-day--outside.is-selected{
  background:#f9f9f9!important;
}
.sffc-day.is-today,.sffc-day.is-today:hover,.sffc-day.is-today:focus,
.sffc-day.is-today.is-selected{
  background:#fff!important;
  box-shadow:inset 0 0 15px #1188114d!important;
}
.sffc-day--weekend.is-today,.sffc-day--outside.is-today{
  background:#f9f9f9!important;
}

.sffc-period-mode{display:flex;align-self:center;gap:0;width:min(100%,420px);margin:0 auto 4px;border:1px solid #0018ff;border-radius:999px;overflow:hidden}
.sffc-period-mode button{display:flex;flex:1;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:6px 12px;border:0;border-radius:0;background:#fff;color:#0018ff;font:inherit;cursor:pointer}
.sffc-period-mode button+button{border-left:1px solid #0018ff}
.sffc-period-mode button.is-active{background:#0018ff;color:#fff}
.sffc-period-mode button:disabled{background:#f6f6f6;color:#0018ff;opacity:.6;cursor:not-allowed}
.sffc-period-mode button small{padding:1px 5px;border-radius:999px;background:linear-gradient(135deg,#000 0%,#100066 100%);color:#fff;font-size:.68em;font-weight:700;line-height:1.4}
.sffc-legend__filter.is-disabled{opacity:.45}

/* Exchange holidays always override selected/today/weekend states. */
.sffc-day[data-sffc-holiday="closed"],
.sffc-day[data-sffc-holiday="closed"]:hover,
.sffc-day[data-sffc-holiday="closed"]:focus,
.sffc-day[data-sffc-holiday="closed"].is-selected,
.sffc-day[data-sffc-holiday="closed"].is-today{
  background:#f5f5f5!important;
  box-shadow:inset 0 0 15px #ff0f0f4d!important;
}
.sffc-day[data-sffc-holiday="early"],
.sffc-day[data-sffc-holiday="early"]:hover,
.sffc-day[data-sffc-holiday="early"]:focus,
.sffc-day[data-sffc-holiday="early"].is-selected,
.sffc-day[data-sffc-holiday="early"].is-today{
  background:#fff!important;
  box-shadow:inset 0 0 15px #ffff0a4d!important;
}
.sffc-holiday-note{
  display:grid;
  gap:6px;
  margin:0 0 12px;
  padding:10px;
  border:1px solid #ffdddd;
  border-radius:4px;
  background:#f9f9f9;
  text-align:center;
}
.sffc-holiday-note strong{font-size:1rem}.sffc-holiday-note span{display:block}

/* A loss is a short, subtle accent; the amount band may still span the chip. */
.sffc-entry--loss::after{
  right:auto;
  width:3.5em;
  height:2px;
  background:repeating-linear-gradient(135deg,rgba(190,0,0,.62) 0 3px,rgba(255,138,138,.38) 3px 6px);
}
.sffc-entry--loss.sffc-bottom-bronze::after,
.sffc-entry--loss.sffc-bottom-silver::after,
.sffc-entry--loss.sffc-bottom-gold::after{
  right:0;
  width:auto;
  height:2px;
}
.sffc-entry--loss.sffc-bottom-bronze::after{
  background:repeating-linear-gradient(135deg,rgba(180,0,0,.62) 0 3px,transparent 3px 6px) left/3.5em 2px no-repeat,linear-gradient(90deg,#681f17,#e77b61,#b7432f,#e77b61,#681f17);
}
.sffc-entry--loss.sffc-bottom-silver::after{
  background:repeating-linear-gradient(135deg,rgba(180,0,0,.62) 0 3px,transparent 3px 6px) left/3.5em 2px no-repeat,linear-gradient(90deg,#596673,#eef3f7,#9ca9b6,#eef3f7,#596673);
}
.sffc-entry--loss.sffc-bottom-gold::after{
  background:repeating-linear-gradient(135deg,rgba(180,0,0,.62) 0 3px,transparent 3px 6px) left/3.5em 2px no-repeat,linear-gradient(90deg,#9b7900,#fff36a,#ffd000,#fff36a,#9b7900);
}

/* Daily navigation and view controls share the Event Calendar structure. */
.sffc-details__date-nav{
  display:grid;
  grid-template-columns:max-content minmax(0,1fr) max-content;
  align-items:center;
  gap:8px;
  margin-bottom:10px;
}
.sffc-details__date-nav .sffc-details__date{margin:0;padding:0}
.sffc-day-nav{display:inline-flex!important;align-items:center!important;justify-content:center!important;border:0!important;border-radius:999px!important;background:#0018ff!important;color:#fff!important;cursor:pointer!important;font-size:18px!important}
.sffc-day-nav:disabled{opacity:.3!important;cursor:not-allowed!important}
.sffc-details__view-switcher{width:100%;box-sizing:border-box;padding:8px 8px 4px}
.sffc-details__view-switcher .spacstar_list_details_view_switcher{display:grid;grid-template-columns:minmax(0,1fr);margin:0}
.sffc-details__view-switcher .spacstar_list_details_view_switcher_label{grid-column:1;justify-self:start;width:100%;margin:0 0 .35rem;white-space:nowrap}
.sffc-details__view-switcher .spacstar_list_details_view_switcher_buttons{display:flex;grid-column:1;width:100%}
.sffc-details__view-switcher .spacstar_list_details_view_switcher_button{flex:1 1 0}
.sffc-details .spac_calendar-detail-entry{
  box-sizing:border-box;
  height:auto!important;
  min-height:0;
}

/* Clearer phase separation. */
.sffc-entry--trust{background-color:#ddd!important;color:#000!important}
.sffc-entry--trust-year{background-color:#ddd!important;color:#000!important}
.sffc-entry--ipo-year{background-color:#000!important;color:#fff!important}
.sffc-entry--merged-year{background-color:#0016ff!important;color:#fff!important}

/* Loss marker: a short solid red section centred on the lower value edge. */
.sffc-entry--loss::after{
  right:auto;
  left:50%;
  width:20px;
  height:2px;
  transform:translateX(-50%);
  background:#ff0000;
}
.sffc-entry--loss.sffc-bottom-bronze::after,
.sffc-entry--loss.sffc-bottom-silver::after,
.sffc-entry--loss.sffc-bottom-gold::after{
  right:0;
  left:0;
  width:auto;
  transform:none;
}
.sffc-entry--loss.sffc-bottom-bronze::after{
  background:linear-gradient(#ff0000,#ff0000) center/20px 2px no-repeat,linear-gradient(90deg,#681f17,#e77b61,#b7432f,#e77b61,#681f17);
}
.sffc-entry--loss.sffc-bottom-silver::after{
  background:linear-gradient(#ff0000,#ff0000) center/20px 2px no-repeat,linear-gradient(90deg,#596673,#eef3f7,#9ca9b6,#eef3f7,#596673);
}
.sffc-entry--loss.sffc-bottom-gold::after{
  background:linear-gradient(#ff0000,#ff0000) center/20px 2px no-repeat,linear-gradient(90deg,#9b7900,#fff36a,#ffd000,#fff36a,#9b7900);
}

/* Keep both columns vertically aligned like the Event Calendar layout. */
.sffc-section-title{
  display:grid!important;
  place-items:center!important;
  min-height:96px;
  box-sizing:border-box;
}
.sffc-calendar__header,
.sffc-day-header{
  box-sizing:border-box;
  margin-bottom:10px;
}
.sffc-calendar__header{margin-bottom:10px}
.sffc-day-header .sffc-details__date-nav{
  height:100%;
  margin:0;
  padding:0;
}
.sffc-day-header .sffc-details__date{
  font-size:18px;
  line-height:1.4;
}

/* YoY/QoQ comparison rows inside the two financial metric columns. */
.sffc-card__changes{
  display:grid;
  gap:1px;
  margin-top:2px;
  font-size:.82em!important;
  font-weight:400;
  line-height:1.25;
}
.sffc-card__change{display:block;white-space:nowrap}
.sffc-card__change.is-positive{color:#37e6a1}
.sffc-card__change.is-negative{color:#ff858b}
.sffc-card__change.is-neutral{color:#fff}
.sffc-card__trust-changes{grid-column:1/-1;display:flex;justify-content:space-between;gap:10px;width:100%;font-size:.82em;font-weight:400;line-height:1.25}
.sffc-card__trust-changes--single{justify-content:center}
.sffc-card__trust-changes .sffc-card__change{white-space:nowrap}
.sffc-card__common .sffc-card__filing-link{font-weight:700;text-decoration:underline;color:inherit}
.sffc-card__metrics .is-loss strong{color:#fff}

/* One card, two preloaded financial periods. */
.sffc-card__period-switcher{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  padding:7px 8px;
  background:#f0f2f8;
}
.sffc-card__period-switcher button{
  min-width:0;
  padding:5px 8px;
  border:1px solid #0016ff;
  background:#fff;
  color:#0016ff;
  cursor:pointer;
  font:inherit;
  line-height:1.25;
}
.sffc-card__period-switcher button:first-child{border-radius:8px 0 0 8px}
.sffc-card__period-switcher button:last-child{border-left:0;border-radius:0 8px 8px 0}
.sffc-card__period-switcher button.is-active{background:#0016ff;color:#fff}
.sffc-card__period-switcher button:disabled{cursor:not-allowed;opacity:.58}
.sffc-card__period-switcher button small{
  display:inline-block;
  margin-left:5px;
  padding:1px 4px;
  border-radius:4px;
  background:#1000aa;
  color:#fff;
  font-size:.72em;
  font-weight:700;
}
.sffc-card__period-unavailable{
  margin:0;
  padding:0 8px;
  background:#f0f2f8;
  color:#777;
  font-size:.68em;
  line-height:1.2;
  text-align:right;
}
.sffc-card__financial-panel[hidden]{display:none!important}
.sffc-card__calculated{font-size:.78em;font-weight:400}

/* Limit the Daily Events column, while each card keeps its natural height. */
.sffc-details{
  position:relative;
  min-height:120px;
  height:auto;
  max-height:none;
  overflow-y:visible;
}
@media (min-width:1041px){
  .sffc-details{
    border:2px solid #000;
    height:780px;
    max-height:780px;
    overflow-y:scroll;
  }
}

/* Small directional delta markers sit on the existing top/bottom value edges. */
.sffc-entry__delta{
  position:absolute;
  z-index:2;
  width:15px;
  height:3px;
  pointer-events:none;
}
.sffc-entry__delta--revenue-qoq{top:0;left:5px}
.sffc-entry__delta--revenue-yoy{top:0;right:5px}
.sffc-entry__delta--profit-qoq{bottom:0;left:5px}
.sffc-entry__delta--profit-yoy{bottom:0;right:5px}
.sffc-entry__delta.is-positive,.sffc-direction-key__line i.is-positive{background:#00c853}
.sffc-entry__delta.is-negative,.sffc-direction-key__line i.is-negative{background:#ff0000}
.sffc-entry__ticker--profit-positive{color:#00ff75;text-shadow:0 1px 1px rgba(0,0,0,.65)}
.sffc-entry__ticker--profit-negative{color:#f98c8c;text-shadow:0 1px 1px rgba(0,0,0,.65)}
.sffc-entry__ticker--profit-neutral{color:#fff}
.sffc-entry__ticker--trust-positive{color:#087a39}
.sffc-entry__ticker--trust-negative{color:#c62828}
.sffc-direction-key,.sffc-direction-key__signs,.sffc-direction-key__ticker{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#111;
  font-size:12px;
}
.sffc-direction-key__line{
  position:relative;
  display:inline-block;
  flex:0 0 70px;
  width:70px;
  height:3px;
  background:#111;
}
.sffc-direction-key__line i{
  position:absolute;
  top:0;
  width:15px;
  height:3px;
}
.sffc-direction-key__line i:first-child{left:5px}
.sffc-direction-key__line i:last-child{right:5px}
.sffc-direction-key__signs i{
  display:inline-block;
  width:12px;
  height:3px;
}
.sffc-direction-key__signs i.is-positive{background:#00c853}
.sffc-direction-key__signs i.is-negative{background:#ff0000}
.sffc-direction-key__ticker{flex-basis:100%}

/* Calendar cells and Daily Events use independent AJAX pagination and sorting. */
.sffc-day{cursor:pointer}
.sffc-day.is-disabled{cursor:default}
.sffc-day__number{
  display:block;
  width:100%;
  margin:0 0 4px;
  padding:0;
  border:0;
  background:transparent;
  color:#777;
  text-align:right;
  font:inherit;
  cursor:pointer;
}
.sffc-day__number:disabled{cursor:default}
.sffc-root .sffc-calendar .sffc-day .sffc-day__number,
.sffc-root .sffc-calendar .sffc-day .sffc-day__number:hover,
.sffc-root .sffc-calendar .sffc-day .sffc-day__number:active,
.sffc-root .sffc-calendar .sffc-day .sffc-day__number:focus{
  appearance:none!important;
  box-sizing:border-box!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#888!important;
  font-size:12px!important;
  font-weight:400!important;
  line-height:1.4!important;
  text-decoration:none!important;
}
.sffc-root .sffc-calendar .sffc-day--outside .sffc-day__number{color:#aaa!important}
.sffc-root .sffc-calendar .sffc-day .sffc-day__number:focus-visible{outline:2px solid #0018ff!important;outline-offset:2px}
.sffc-day__content{min-width:0}
.sffc-day__pager,.sffc-daily-pager{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-top:4px;
  font-size:11px;
}
.sffc-day__pager button,.sffc-daily-pager button{
  min-width:22px;
  padding:1px 5px;
  border:1px solid #0018ff;
  border-radius:999px;
  background:#0018ff;
  color:#fff;
  line-height:1.3;
  cursor:pointer;
}
.sffc-day__pager button:disabled,.sffc-daily-pager button:disabled{opacity:.35;cursor:default}
.sffc-day.is-loading{opacity:.6}
.sffc-details.is-loading{opacity:.65}
.sffc-daily-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(150px,.55fr);
  gap:10px;
  margin:0 0 12px;
  padding:8px;
  border:1px solid #d4d7de;
  background:#f9f9fb;
}
.sffc-daily-controls label{display:grid;gap:4px;min-width:0;font-size:.78rem;font-weight:700}
.sffc-daily-controls input,.sffc-daily-controls select{
  box-sizing:border-box;
  width:100%;
  min-width:0;
  min-height:36px;
  padding:5px 8px;
  border:1px solid #cfd3dd;
  border-radius:4px;
  background:#fff;
  color:#111;
  font:inherit;
  font-weight:400;
}
.sffc-daily-pager{justify-content:flex-end;margin:8px 0 12px;font-size:.82rem}
@media(max-width:600px){
  .sffc-daily-controls{grid-template-columns:1fr}
}

/* Clickable legend filters; matched entries are grouped first by the server,
   while the remaining entries stay visible in a subdued state. */
.sffc-root .sffc-legend{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:8px;margin-top:4px;padding:0 0 12px;font-size:13px}
.sffc-legend__section{display:flex;align-items:flex-start;gap:12px;padding:7px 0;border-top:1px solid #d4d7de}
.sffc-legend__section:first-child{border-top:0}
.sffc-legend__section-heading{flex:0 0 95px;padding-top:2px}
.sffc-legend__parent{display:flex;align-items:center;gap:5px;white-space:nowrap}
.sffc-legend__parent input[type=checkbox]{flex:0 0 14px;width:14px;height:14px;margin:0;accent-color:#0018ff;cursor:pointer}
.sffc-legend__section-content{display:flex;flex:1;flex-wrap:wrap;align-items:center;gap:7px 12px;min-width:0}
.sffc-legend__group{display:inline-flex;flex-wrap:wrap;align-items:center;gap:5px 7px;min-width:0}
.sffc-legend__group-title{font-weight:700;white-space:nowrap}
.sffc-legend__filter{display:inline-flex;align-items:center;gap:4px;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:#111;font:inherit;font-size:13px;line-height:1.25;cursor:default}
.sffc-legend__filter.is-disabled{opacity:.45}
.sffc-legend__tier-badge{display:inline-block;padding:.12rem .4rem;border-radius:999px;background:linear-gradient(135deg,#000 0%,#100066 100%);color:#fff;font-size:.68em;font-weight:700;line-height:1.4;white-space:nowrap}
.sffc-legend__filter input[type=checkbox]{flex:0 0 14px;width:14px;height:14px;margin:0 1px 0 0;accent-color:#0018ff;cursor:pointer}
.sffc-legend__filter input:disabled{cursor:default}
.sffc-legend__text{display:inline-block;white-space:nowrap}
.sffc-legend__filter--spac_status_0 .sffc-legend__text,.sffc-legend__filter--spac_status_1 .sffc-legend__text,.sffc-legend__filter--spac_status_2 .sffc-legend__text,.sffc-legend__filter--spac_status_3 .sffc-legend__text,.sffc-legend__filter--spac_status_4 .sffc-legend__text{display:none}
.sffc-legend__filter--merged_quarter .sffc-legend__text{padding:3px 8px;border-radius:3px;background:#0018ff;color:#fff}
.sffc-legend__filter--merged_year .sffc-legend__text{padding:3px 8px;border-radius:3px;background:#0018ff;color:#fff}
.sffc-legend__filter--ipo_quarter .sffc-legend__text{padding:3px 8px;border-radius:3px;background:#000;color:#fff}
.sffc-legend__filter--ipo_year .sffc-legend__text{padding:3px 8px;border-radius:3px;background:#000;color:#fff}
.sffc-root{--sffc-metal-bronze:linear-gradient(90deg,#702015 0%,#c34b32 16%,#ffb08a 35%,#a93623 52%,#ffd0b5 72%,#b4472e 88%,#702015 100%);--sffc-metal-silver:linear-gradient(90deg,#53616e 0%,#b6c2ce 18%,#f8fcff 38%,#8493a1 53%,#fff 72%,#aab6c1 88%,#53616e 100%);--sffc-metal-gold:linear-gradient(90deg,#806000 0%,#c69c00 18%,#fff36a 38%,#d5a900 53%,#fff9a8 72%,#e0b500 88%,#806000 100%)}
.sffc-legend__filter--company_revenue_100 .sffc-legend__text,.sffc-legend__filter--company_revenue_500 .sffc-legend__text,.sffc-legend__filter--company_revenue_1000 .sffc-legend__text{padding:3px 8px;border:1px solid transparent;border-top-width:3px;border-radius:3px;background:linear-gradient(#fff,#fff) padding-box,var(--sffc-metal-bronze) border-box}
.sffc-legend__filter--trust_100 .sffc-legend__text,.sffc-legend__filter--trust_250 .sffc-legend__text,.sffc-legend__filter--trust_500 .sffc-legend__text{padding:3px 8px;border:2px solid transparent;border-radius:3px;background:linear-gradient(#fff,#fff) padding-box,var(--sffc-metal-bronze) border-box}
.sffc-weekday__short{display:none}
@media(max-width:780px){
  .sffc-calendar__grid{grid-template-columns:repeat(5,minmax(0,1.2fr)) repeat(2,minmax(0,.5fr));overflow-x:visible}
  .sffc-weekday--weekend .sffc-weekday__full{display:none}
  .sffc-weekday--weekend .sffc-weekday__short{display:inline}
}
.sffc-legend__filter--company_revenue_500 .sffc-legend__text,.sffc-legend__filter--trust_250 .sffc-legend__text{background:linear-gradient(#fff,#fff) padding-box,var(--sffc-metal-silver) border-box}
.sffc-legend__filter--company_revenue_1000 .sffc-legend__text,.sffc-legend__filter--trust_500 .sffc-legend__text{background:linear-gradient(#fff,#fff) padding-box,var(--sffc-metal-gold) border-box}
.sffc-legend__filter--profit_loss_10 .sffc-legend__text,.sffc-legend__filter--profit_loss_50 .sffc-legend__text,.sffc-legend__filter--profit_loss_100 .sffc-legend__text{padding:3px 8px;border:1px solid transparent;border-bottom-width:3px;border-radius:3px;background:linear-gradient(#fff,#fff) padding-box,var(--sffc-metal-bronze) border-box}
.sffc-legend__filter--profit_loss_50 .sffc-legend__text{background:linear-gradient(#fff,#fff) padding-box,var(--sffc-metal-silver) border-box}
.sffc-legend__filter--profit_loss_100 .sffc-legend__text{background:linear-gradient(#fff,#fff) padding-box,var(--sffc-metal-gold) border-box}
.sffc-root .sffc-entry.sffc-top-bronze:before,.sffc-root .sffc-entry.sffc-bottom-bronze:not(.sffc-entry--loss):after,.sffc-root .sffc-band--top.sffc-band--bronze:before,.sffc-root .sffc-band--bottom.sffc-band--bronze:after{background:var(--sffc-metal-bronze)}
.sffc-root .sffc-entry.sffc-top-silver:before,.sffc-root .sffc-entry.sffc-bottom-silver:not(.sffc-entry--loss):after,.sffc-root .sffc-band--top.sffc-band--silver:before,.sffc-root .sffc-band--bottom.sffc-band--silver:after{background:var(--sffc-metal-silver)}
.sffc-root .sffc-entry.sffc-top-gold:before,.sffc-root .sffc-entry.sffc-bottom-gold:not(.sffc-entry--loss):after,.sffc-root .sffc-band--top.sffc-band--gold:before,.sffc-root .sffc-band--bottom.sffc-band--gold:after{background:var(--sffc-metal-gold)}
.sffc-root .sffc-entry.sffc-top-bronze:before,.sffc-root .sffc-entry.sffc-top-silver:before,.sffc-root .sffc-entry.sffc-top-gold:before,.sffc-root .sffc-entry.sffc-bottom-bronze:after,.sffc-root .sffc-entry.sffc-bottom-silver:after,.sffc-root .sffc-entry.sffc-bottom-gold:after{height:3px}
.sffc-root .sffc-entry--loss.sffc-bottom-bronze:after{background:linear-gradient(#ff0000,#ff0000) center/20px 3px no-repeat,var(--sffc-metal-bronze)}
.sffc-root .sffc-entry--loss.sffc-bottom-silver:after{background:linear-gradient(#ff0000,#ff0000) center/20px 3px no-repeat,var(--sffc-metal-silver)}
.sffc-root .sffc-entry--loss.sffc-bottom-gold:after{background:linear-gradient(#ff0000,#ff0000) center/20px 3px no-repeat,var(--sffc-metal-gold)}
.sffc-legend__filter--profit .sffc-legend__text,.sffc-legend__filter--trust_up .sffc-legend__text{color:#00c853}
.sffc-legend__filter--loss .sffc-legend__text,.sffc-legend__filter--trust_down .sffc-legend__text{color:#ff0000}
.sffc-filter-sample--neutral-split{display:inline-flex;align-items:stretch;flex:0 0 auto;overflow:hidden;border:1px solid #383838;border-radius:2px;font-size:13px;line-height:1.25;white-space:nowrap}
.sffc-filter-sample--neutral-split>span{display:inline-flex;align-items:center;padding:2px 5px}
.sffc-filter-sample--neutral-split>span:first-child{background:#fff;color:#111}
.sffc-filter-sample--neutral-split>span+span{background:#383838;color:#fff}
.sffc-legend__filter--neutral .sffc-legend__text,.sffc-legend__filter--trust_neutral .sffc-legend__text{display:none}
.sffc-filter-sample{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:31px;height:19px;box-sizing:border-box;padding:1px 4px;border-radius:3px;font-size:10px;line-height:1}
.sffc-filter-sample.sffc-entry--trust{margin:0}
.sffc-filter-sample.sffc-entry--merged-quarter,.sffc-filter-sample.sffc-entry--ipo-quarter{color:#fff}
.sffc-filter-sample.sffc-entry--merged-year,.sffc-filter-sample.sffc-entry--ipo-year{color:#111}
.sffc-filter-sample.sffc-band{min-width:36px;height:19px;margin:0;padding:0}
.sffc-filter-sample--delta{width:auto;min-width:0;height:3px;margin:0;padding:0;border-radius:1px;background:#111}
.sffc-filter-sample--delta i{position:absolute;width:15px;height:3px;box-sizing:border-box}
.sffc-filter-sample--delta i.is-positive{background:#00c853}
.sffc-filter-sample--delta i.is-negative{background:#ff0000}
.sffc-filter-sample--top-left i{top:0;left:5px}
.sffc-filter-sample--top-right i{top:0;right:5px}
.sffc-filter-sample--bottom-left i{bottom:0;left:5px}
.sffc-filter-sample--bottom-right i{bottom:0;right:5px}
.sffc-legend__filter--revenue_qoq_up,.sffc-legend__filter--revenue_qoq_down,.sffc-legend__filter--revenue_yoy_up,.sffc-legend__filter--revenue_yoy_down,
.sffc-legend__filter--profit_qoq_up,.sffc-legend__filter--profit_qoq_down,.sffc-legend__filter--profit_yoy_up,.sffc-legend__filter--profit_yoy_down{display:grid;grid-template-columns:14px max-content;grid-template-rows:auto auto;column-gap:4px;row-gap:2px;justify-items:start;align-items:center}
.sffc-legend__filter--revenue_qoq_up input,.sffc-legend__filter--revenue_qoq_down input,.sffc-legend__filter--revenue_yoy_up input,.sffc-legend__filter--revenue_yoy_down input,
.sffc-legend__filter--profit_qoq_up input,.sffc-legend__filter--profit_qoq_down input,.sffc-legend__filter--profit_yoy_up input,.sffc-legend__filter--profit_yoy_down input{grid-column:1;grid-row:1 / 3}
.sffc-legend__filter--revenue_qoq_up .sffc-filter-sample--delta,.sffc-legend__filter--revenue_qoq_down .sffc-filter-sample--delta,.sffc-legend__filter--revenue_yoy_up .sffc-filter-sample--delta,.sffc-legend__filter--revenue_yoy_down .sffc-filter-sample--delta{grid-column:2;grid-row:1}
.sffc-legend__filter--revenue_qoq_up .sffc-filter-sample--delta,.sffc-legend__filter--revenue_qoq_down .sffc-filter-sample--delta,.sffc-legend__filter--revenue_yoy_up .sffc-filter-sample--delta,.sffc-legend__filter--revenue_yoy_down .sffc-filter-sample--delta,
.sffc-legend__filter--profit_qoq_up .sffc-filter-sample--delta,.sffc-legend__filter--profit_qoq_down .sffc-filter-sample--delta,.sffc-legend__filter--profit_yoy_up .sffc-filter-sample--delta,.sffc-legend__filter--profit_yoy_down .sffc-filter-sample--delta{justify-self:stretch}
.sffc-legend__filter--revenue_qoq_up .sffc-legend__text,.sffc-legend__filter--revenue_qoq_down .sffc-legend__text,.sffc-legend__filter--revenue_yoy_up .sffc-legend__text,.sffc-legend__filter--revenue_yoy_down .sffc-legend__text{grid-column:2;grid-row:2}
.sffc-legend__filter--profit_qoq_up .sffc-filter-sample--delta,.sffc-legend__filter--profit_qoq_down .sffc-filter-sample--delta,.sffc-legend__filter--profit_yoy_up .sffc-filter-sample--delta,.sffc-legend__filter--profit_yoy_down .sffc-filter-sample--delta{grid-column:2;grid-row:2}
.sffc-legend__filter--profit_qoq_up .sffc-legend__text,.sffc-legend__filter--profit_qoq_down .sffc-legend__text,.sffc-legend__filter--profit_yoy_up .sffc-legend__text,.sffc-legend__filter--profit_yoy_down .sffc-legend__text{grid-column:2;grid-row:1}
.sffc-filter-sample--ticker{min-width:31px;background:#383838;color:#fff!important;text-shadow:none!important}
.sffc-filter-sample--ticker.is-profit{color:#00ff75!important}
.sffc-filter-sample--ticker.is-loss{color:#f98c8c!important}
.sffc-filter-sample--ticker.is-neutral{color:#fff!important}
.sffc-filter-sample--ticker.is-trust-up{color:#35c878!important}
.sffc-filter-sample--ticker.is-trust-down{color:#ff7878!important}
.sffc-filter-sample--watch{min-width:20px;background:#0018ff;color:#fff;font-weight:700}
.sffc-root .sffc-entry--spac-status-0{background-color:#666!important;color:#fff!important}
.sffc-root .sffc-entry--spac-status-1{background-color:#ddd!important;color:#111!important}
.sffc-root .sffc-entry--spac-status-2{background-color:orange!important;color:#111!important}
.sffc-root .sffc-entry--spac-status-3{background-color:#ff0!important;color:#111!important}
.sffc-root .sffc-entry--spac-status-4{background-color:green!important;color:#fff!important}
.sffc-spac-status-sample{display:inline-block;min-width:34px;box-sizing:border-box;padding:2px 5px;border-radius:3px;text-align:center;font-size:12px;line-height:1.35}
.sffc-legend__footer{display:block;width:100%;margin-top:0}
.sffc-legend__clear{display:block;width:100%;box-sizing:border-box;border:1px solid #0018ff!important;border-radius:0!important;padding:6px 10px;background:#0018ff!important;color:#fff!important;font-size:13px;cursor:pointer}
.sffc-legend__clear:disabled{opacity:.45;cursor:default}
.sffc-root .sffc-entry.is-filter-muted,.sffc-root .sffc-card.is-filter-muted{opacity:.28!important;filter:grayscale(.55)!important}
.sffc-root .sffc-entry.is-filter-match,.sffc-root .sffc-card.is-filter-match{opacity:1!important;filter:none!important}
@media(max-width:700px){
  .sffc-legend__section{display:block}
  .sffc-legend__section-heading{margin-bottom:6px}
  .sffc-legend__section-content{gap:8px}
  .sffc-legend__footer{justify-content:flex-start}
  .sffc-root .sffc-details{border:0;padding-right:0;padding-left:0}
}

/* Keep shared loading feedback local to the panel being refreshed. */
.sffc-calendar,.sffc-daily-cards,.sffc-day{position:relative}
.sffc-calendar.is-loading,.sffc-daily-cards.is-loading,.sffc-day.is-loading{opacity:1;pointer-events:auto}
.sffc-daily-cards.is-loading::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:19;
  background:rgba(255,255,255,.8);
  pointer-events:none;
}
.sffc-calendar.is-loading > .spacstar-shared-loader,
.sffc-day.is-loading > .spacstar-shared-loader{
  position:absolute;
  inset:0;
  z-index:20;
}
.sffc-daily-cards.is-loading > .spacstar-shared-loader{
  position:sticky;
  top:50%;
  z-index:20;
  display:flex;
  width:100%;
  height:0;
  overflow:visible;
  align-items:center;
  justify-content:center;
  background:transparent;
  pointer-events:none;
}
.sffc-daily-cards.is-loading > .spacstar-shared-loader .spacstar-shared-spinner{
  background:transparent;
  box-shadow:none;
}
