/* All styles are scoped to this widget. No global resets or external fonts. */
.spac { --spac-blue:#20aee5; --spac-yellow:#f0c358; --spac-ink:#263741; --spac-muted:#66737c; --spac-line:#e1e6e9; box-sizing:border-box; display:block; width:100%; max-width:100%; margin:16px 0; padding:0; border:1px solid var(--spac-line); border-top:3px solid var(--spac-yellow); border-radius:8px; overflow:hidden; background:#fff; color:var(--spac-ink); font-family:inherit; font-size:14px; line-height:1.45; text-align:left; clear:both; scroll-margin-top:80px; }
.spac *, .spac *::before, .spac *::after { box-sizing:border-box; }
.spac [hidden] { display:none !important; }
.spac .spac__header { padding:11px 16px 8px; margin:0; border:0; }
.spac .spac__title { margin:0; padding:0; font-size:18px; line-height:1.4; font-weight:700; color:var(--spac-ink); }
.spac .spac__body { margin:0; padding:0 16px; }
.spac p { margin:0; padding:0; border:0; background:none; font-size:inherit; line-height:inherit; color:inherit; }
.spac button, .spac input, .spac select { font-family:inherit; text-transform:none; letter-spacing:normal; box-shadow:none; text-shadow:none; }
.spac button { cursor:pointer; -webkit-tap-highlight-color:transparent; }
.spac button:disabled { cursor:default; opacity:.4; }
.spac .spac__bank-row { display:flex; align-items:center; gap:10px; margin:0 0 8px; }
.spac .spac__label { display:block; flex:0 0 auto; margin:0; padding:0; font-size:12px; font-weight:600; line-height:1.4; color:var(--spac-muted); }
.spac .spac__select, .spac .spac__date { box-sizing:border-box; min-width:0; max-width:100%; min-height:38px; margin:0; padding:6px 30px 6px 10px; border:1px solid #cbd3d8; border-radius:5px; background-color:#fff; color:var(--spac-ink); font-size:14px; line-height:1.4; font-weight:400; }
.spac .spac__bank { flex:1 1 auto; width:100%; height:auto; }
.spac .spac__bank-caption { margin:0 0 7px; padding:0; font-size:11px; line-height:1.35; color:var(--spac-muted); }
.spac[data-spac-compact="1"] .spac__bank-row { display:block; margin-bottom:3px; }
.spac[data-spac-compact="1"] .spac__bank-row .spac__label { margin-bottom:4px; font-size:11px; }
.spac .spac__status { margin:5px 0; font-size:11px; line-height:1.4; color:var(--spac-muted); }
.spac .spac__status:empty { display:none; }
.spac .spac__status--warning { margin:6px 0; padding:6px 8px; background:#fff8e9; color:#684c18; border-radius:4px; }
.spac .spac__result { margin:0 0 10px; }
.spac .spac__next { display:block; width:100%; min-width:0; min-height:0; margin:0; padding:9px 12px; border:0; border-left:3px solid var(--spac-blue); border-radius:3px; background:#f0f9fd; color:var(--spac-ink); text-align:left; appearance:none; }
.spac .spac__next:hover { background:#e5f5fc; }
.spac .spac__next-line { display:flex; align-items:baseline; flex-wrap:wrap; gap:2px; }
.spac .spac__next-label { margin-right:12px; color:#355464; font-size:12px; line-height:1.4; font-weight:500; }
.spac .spac__big-date { color:#15445b; font-size:27px; line-height:1.18; font-weight:700; font-variant-numeric:tabular-nums; }
.spac .spac__weekday { color:#15445b; font-size:14px; font-weight:600; line-height:1.4; }
.spac .spac__badge { margin-left:8px; padding:2px 7px; border:0; border-radius:3px; background:var(--spac-yellow); color:#433416; font-size:11px; line-height:1.35; font-weight:600; }
.spac .spac__next-year { margin-left:5px; font-size:11px; color:var(--spac-muted); }
.spac .spac__next-period { display:block; margin-top:4px; color:#526873; font-size:12px; line-height:1.4; font-weight:400; }
.spac .spac__same-day { margin:4px 0 0; color:var(--spac-muted); font-size:10px; line-height:1.4; }
.spac .spac__empty { margin:4px 0; padding:9px 10px; border-radius:3px; background:#f6f7f8; font-size:13px; line-height:1.55; }
.spac .spac__nav { display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; gap:7px; align-items:center; margin:0 0 7px; }
.spac .spac__month-select { width:100%; min-height:34px; height:34px; max-width:210px; justify-self:center; border:0; background-color:#fff; padding-top:3px; padding-bottom:3px; font-size:14px; font-weight:600; text-align:center; }
.spac .spac__nav-button, .spac .spac__today-button, .spac .spac__retry { display:inline-flex; align-items:center; justify-content:center; gap:4px; min-width:0; min-height:34px; margin:0; padding:4px 10px; border:1px solid #dce3e7; border-radius:4px; background:#fff; color:#435863; font-size:12px; font-weight:500; line-height:1.4; appearance:none; }
.spac .spac__nav-button:hover:not(:disabled), .spac .spac__today-button:hover:not(:disabled) { border-color:var(--spac-blue); background:#f0f9fd; }
.spac .spac__nav-button span { color:#77919e; font-size:19px; line-height:1; }
.spac .spac__today-button { font-size:11px; padding-right:8px; padding-left:8px; }
.spac .spac__legend { display:flex; flex-wrap:wrap; align-items:center; gap:4px 16px; margin:0 0 7px; color:var(--spac-muted); font-size:11px; line-height:1.45; }
.spac .spac__legend > span { display:inline-flex; align-items:center; gap:5px; }
.spac .spac__legend i { display:inline-block; flex-shrink:0; width:11px; height:11px; margin:0; border:0; font-style:normal; }
.spac .spac__legend-pay { background:var(--spac-blue); border-radius:50%; }
.spac .spac__legend-period { background:var(--spac-yellow); border-radius:1px; }
.spac .spac__months { display:grid; width:100%; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; align-items:start; }
.spac .spac__months[data-count="1"] { grid-template-columns:minmax(0,1fr); }
.spac .spac__months[data-count="1"] .spac__month { width:100%; max-width:460px; justify-self:center; }
.spac .spac__month { min-width:0; margin:0; padding:0; border:1px solid var(--spac-line); border-radius:5px; overflow:hidden; background:#fff; }
.spac .spac__table { display:table; table-layout:fixed; width:100%; max-width:100%; min-width:0; border:0; border-collapse:separate; border-spacing:0; margin:0; padding:0; background:#fff; color:var(--spac-ink); font-size:13px; line-height:1.3; box-shadow:none; }
.spac .spac__table caption { caption-side:top; margin:0; padding:7px 10px 6px; border:0; border-bottom:1px solid var(--spac-line); background:#fafcfd; text-align:left; color:var(--spac-ink); font-size:13px; font-weight:600; line-height:1.4; }
.spac .spac__table tbody { border:0; }
.spac .spac__table tr, .spac .spac__table tr:nth-child(2n) { height:auto; margin:0; padding:0; border:0; background:transparent; color:inherit; }
.spac .spac__table td, .spac .spac__table th { position:relative; width:14.285714%; height:35px; min-width:0; margin:0; border:0; padding:2px 0; vertical-align:middle; text-align:center; font-size:13px; font-weight:400; color:var(--spac-ink); background:#fff; overflow:visible; }
.spac .spac__table th { height:26px; padding:3px 0; font-size:11px; background:#fff; color:#71808a; }
.spac .spac__table .spac__sun { color:#aa6262; }
.spac .spac__table .spac__sat { color:#617fa0; }
.spac .spac__table .spac__outside { color:#b3bbc1; background:#fcfcfd; }
.spac .spac__table .spac__range { background:#fdf0cc; }
.spac .spac__table .spac__range::after { content:""; position:absolute; bottom:0; right:0; left:0; height:2px; background:var(--spac-yellow); pointer-events:none; }
.spac .spac__table .spac__range-start { border-top-left-radius:5px; border-bottom-left-radius:5px; }
.spac .spac__table .spac__range-end { border-top-right-radius:5px; border-bottom-right-radius:5px; }
.spac .spac__table .spac__range .spac__day { color:#51431e; font-weight:600; }
.spac .spac__payday, .spac .spac__day { display:inline-flex; position:relative; z-index:1; align-items:center; justify-content:center; width:30px; height:30px; min-width:0; min-height:0; margin:0; padding:0; border:0; border-radius:50%; color:inherit; background:none; line-height:1; font-size:13px; font-weight:400; text-align:center; vertical-align:middle; appearance:none; }
.spac .spac__payday { background:var(--spac-blue); color:#123346; font-weight:700; cursor:pointer; box-shadow:none; }
.spac .spac__payday.spac__adjacent { background:#d2eef9; color:#476e7f; }
.spac .spac__payday:hover { box-shadow:0 0 0 2px #136386; }
.spac .spac__payday[aria-pressed="true"] { background:var(--spac-blue); color:#123346; box-shadow:0 0 0 2px #174b63; }
.spac [aria-current="date"] { text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:4px; }
.spac .spac__selection { display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 9px; min-height:31px; padding:7px 1px 5px; margin:0; color:#51616a; font-size:12px; line-height:1.5; }
.spac .spac__selection-pay { flex-shrink:0; font-weight:600; color:#1b6584; }
.spac .spac__selection-period { border-bottom:2px solid var(--spac-yellow); }
.spac .spac__text-button { display:inline; min-width:0; min-height:0; padding:0; margin:0; border:0; border-radius:0; background:none; color:#34677c; font-size:11px; line-height:1.5; text-decoration:underline; text-underline-offset:2px; font-weight:400; }
.spac .spac__hint { color:var(--spac-muted); font-size:11px; }
.spac .spac__calendar-note, .spac .spac__pending { margin:2px 0 5px; padding:0; color:#776341; font-size:11px; line-height:1.4; }
.spac details { margin:0; padding:0; border:0; background:none; box-shadow:none; }
.spac summary { display:list-item; margin:0; padding:0; border:0; background:none; color:#526b77; font-size:12px; font-weight:400; line-height:1.45; list-style-position:inside; cursor:pointer; }
.spac summary::marker { color:#7b8d95; font-size:10px; }
.spac .spac__calendar-fold > summary { padding:4px 0 8px; }
.spac .spac__lookup { border-top:1px solid var(--spac-line); margin:3px 0 0; }
.spac .spac__lookup > summary { padding:6px 1px; font-size:11px; }
.spac .spac__lookup-inner { display:flex; align-items:center; flex-wrap:wrap; gap:6px 9px; padding:1px 0 8px; }
.spac .spac__date { width:175px; min-height:36px; padding:5px 7px; font-size:14px; }
.spac .spac__lookup-result { flex:1 0 100%; font-size:12px; line-height:1.5; }
.spac .spac__lookup-result:empty { display:none; }
.spac .spac__lookup-date { display:block; color:#1b6584; font-size:13px; font-weight:600; }
.spac .spac__lookup-period { display:block; margin-top:1px; font-size:11px; color:var(--spac-muted); }
.spac .spac__footer { margin:0; padding:6px 16px 7px; border-top:1px solid var(--spac-line); background:#fcfcfc; color:var(--spac-muted); font-size:10px; line-height:1.35; }
.spac .spac__scope { margin:0 0 3px; padding:0; font-size:10px!important; line-height:1.35; color:var(--spac-muted); }
.spac .spac__foot-row { display:flex; flex-wrap:wrap; align-items:flex-start; gap:3px 12px; }
.spac .spac__source { margin:0; padding:0; font-size:10px; line-height:1.4; }
.spac a { color:#466b7a; text-decoration:underline; text-underline-offset:2px; box-shadow:none; }
.spac .spac__notes { flex:1; min-width:140px; }
.spac .spac__notes > summary { min-height:0; padding:0; color:var(--spac-muted); font-size:10px; line-height:1.4; }
.spac .spac__notes[open] { flex-basis:100%; }
.spac .spac__notes-inner { margin:3px 0 0; padding:0; font-size:10px; line-height:1.4; }
.spac .spac__notes-inner p { margin:0 0 3px; padding:0; font-size:10px!important; line-height:1.4; }
.spac .spac__article-link { display:inline-block; margin-top:3px; font-size:11px; line-height:1.4; }
.spac .spac__noscript { padding:6px 16px; font-size:11px; line-height:1.4; }
.spac .spac__sr-only { position:absolute !important; width:1px !important; height:1px !important; margin:-1px !important; padding:0 !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; }
.spac :is(select,input,button,summary,a):focus-visible { outline:3px solid #19607c; outline-offset:3px; }
@media (max-width:600px) {
  .spac .spac__select, .spac .spac__date { font-size:14px; } /* Prevent iOS input zoom. */
  .spac .spac__bank-row { display:block; }
  .spac .spac__bank-row .spac__label { margin:0 0 4px; font-size:11px; }
  .spac .spac__bank { width:100%; padding-left:7px; }
  .spac .spac__month-select { font-size:14px; }
}
@media (max-width:380px) {
  .spac .spac__header { padding:10px 10px 7px; }
  .spac .spac__body { padding-right:10px; padding-left:10px; }
  .spac .spac__footer { padding-right:10px; padding-left:10px; }
  .spac .spac__title { font-size:17px; }
  .spac .spac__next { padding:8px 9px; }
  .spac .spac__next-label { margin-right:6px; font-size:11px; }
  .spac .spac__weekday { font-size:12px; }
  .spac .spac__badge { margin-left:4px; padding:2px 5px; font-size:10px; }
  .spac .spac__big-date { font-size:25px; }
  .spac .spac__nav { gap:3px; }
  .spac .spac__nav-button { padding:4px 7px; font-size:11px; }
  .spac .spac__month-select { padding-right:18px; padding-left:0; font-size:13px; }
  .spac .spac__today-button { padding-right:6px; padding-left:6px; }
  .spac .spac__legend { column-gap:10px; font-size:11px; }
  .spac .spac__selection { font-size:11px; column-gap:6px; }
}
@media (prefers-reduced-motion:reduce) { .spac *, .spac *::before, .spac *::after { scroll-behavior:auto !important; transition:none !important; } }
