.pwa-install-button{position:fixed;right:18px;bottom:18px;z-index:9997;display:inline-flex;align-items:center;gap:9px;padding:9px 14px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:#061226;color:#fff;box-shadow:0 16px 42px rgba(6,18,38,.28);font:800 .88rem/1 Arial,'Noto Sans KR',sans-serif;cursor:pointer}.pwa-install-button[hidden]{display:none}.pwa-install-button img{width:28px;height:28px;border-radius:8px}.pwa-install-button:hover{transform:translateY(-1px)}
.topbar .brand-logo-image{display:block;width:auto;height:40px;max-width:min(300px,45vw);object-fit:contain}.site-header .landing-brand-logo{display:block;width:auto;height:48px;max-width:min(390px,55vw);object-fit:contain}.brand-full-logo{display:block;width:auto;height:40px;max-width:min(300px,45vw);object-fit:contain}
@media(max-width:680px){.topbar .brand-logo-image{height:34px;max-width:52vw}.site-header .landing-brand-logo{height:38px;max-width:58vw}.pwa-install-button{right:12px;bottom:12px;padding:8px 12px}}

/* v5.5.2 */
.pwa-install-help{position:fixed;right:14px;bottom:14px;z-index:9997;max-width:260px;padding:13px 15px;border:1px solid #dce5f0;border-radius:14px;background:#fff;color:#17243a;box-shadow:0 18px 44px rgba(6,18,38,.2);font:700 .82rem/1.55 Arial,'Noto Sans KR',sans-serif}
.pwa-install-help button{float:right;border:0;background:transparent;color:#64748b;cursor:pointer}


/* v5.5.2 install guide */
.pwa-guide-modal{position:fixed;inset:0;z-index:10020;display:grid;place-items:center;padding:20px;background:rgba(2,8,23,.68);backdrop-filter:blur(8px)}
.pwa-guide-card{position:relative;width:min(420px,100%);padding:28px;border:1px solid rgba(148,163,184,.28);border-radius:24px;background:#fff;color:#0f172a;text-align:center;box-shadow:0 28px 80px rgba(2,8,23,.34)}
.pwa-guide-close{position:absolute;right:14px;top:10px;width:36px;height:36px;border:0;background:transparent;font-size:28px;color:#64748b;cursor:pointer}
.pwa-guide-icon{width:86px;height:86px;border-radius:22px;box-shadow:0 12px 30px rgba(15,23,42,.18)}
.pwa-guide-card h2{margin:16px 0 8px;font-size:22px}
.pwa-guide-card p{margin:0;color:#475569;line-height:1.7}
.pwa-guide-link{display:inline-flex;margin-top:18px;padding:11px 16px;border-radius:12px;background:#2563eb;color:#fff!important;text-decoration:none!important;font-weight:800}
@media(max-width:640px){.pwa-guide-modal{align-items:end;padding:0}.pwa-guide-card{width:100%;border-radius:24px 24px 0 0;padding:28px 22px 34px}}

/* v5.5.3 install experience */
.pwa-install-button{min-height:50px;padding:7px 16px 7px 8px;border-color:rgba(96,165,250,.42);background:linear-gradient(135deg,#061226,#0b2447 72%,#123d68);box-shadow:0 18px 46px rgba(6,18,38,.35),0 0 0 1px rgba(37,99,235,.15)}
.pwa-install-button img{width:36px;height:36px;border-radius:11px;box-shadow:0 5px 14px rgba(0,0,0,.24)}
.pwa-install-button span{display:grid;text-align:left;line-height:1.05;font-size:.91rem}
.pwa-install-button span small{margin-bottom:3px;color:#86efac;font-size:.59rem;letter-spacing:.12em}
.pwa-guide-kicker{margin:14px 0 0!important;color:#2563eb!important;font-size:.7rem;font-weight:900;letter-spacing:.12em}
.pwa-guide-message{color:#475569;line-height:1.7}
.pwa-install-steps{margin:0;padding:0 0 0 22px;text-align:left}
.pwa-install-steps li{padding:5px 0}
.pwa-guide-action{display:inline-flex;margin-top:18px;padding:11px 18px;border:0;border-radius:12px;background:#22c55e;color:#052e16;font-weight:900;cursor:pointer}
.pwa-check-install-status{margin-top:16px;padding:16px;border:1px solid #bfdbfe;border-radius:16px;background:#eff6ff}
.pwa-check-install-status strong{display:block;margin-bottom:5px;color:#1d4ed8}
@media(max-width:680px){.pwa-install-button{left:auto;right:12px;bottom:14px;min-height:46px;padding:6px 13px 6px 7px}.pwa-install-button img{width:33px;height:33px}.pwa-install-button span{font-size:.84rem}}

/* v6.0.0 high-density brand */
.topbar .brand-logo-image{height:46px;max-width:min(340px,52vw);image-rendering:auto;filter:contrast(1.05) saturate(1.04)}
@media(max-width:640px){.topbar .brand-logo-image{height:39px;max-width:56vw}}

/* v6.0.1 sharper authenticated header brand */
.topbar .brand-logo-image,.page-header .brand-logo-image,.report-topbar .brand-logo-image{height:57px!important;max-width:min(430px,58vw)!important;filter:contrast(1.12) saturate(1.07) drop-shadow(0 1px 0 rgba(255,255,255,.12))!important}
@media(max-width:720px){.topbar .brand-logo-image,.page-header .brand-logo-image,.report-topbar .brand-logo-image{height:46px!important;max-width:64vw!important}}

/* v6.1.2 high-resolution authenticated brand */
@media (min-width:1024px){.topbar .brand-logo-image,.page-header .brand-logo-image,.report-topbar .brand-logo-image{width:auto!important;height:72px!important;max-width:min(540px,46vw)!important;object-fit:contain!important;image-rendering:-webkit-optimize-contrast;filter:contrast(1.18) saturate(1.1) drop-shadow(0 2px 8px rgba(2,8,23,.16))!important}.topbar{min-height:88px}}
@media (min-width:721px) and (max-width:1023px){.topbar .brand-logo-image,.page-header .brand-logo-image,.report-topbar .brand-logo-image{height:62px!important;max-width:min(470px,54vw)!important;image-rendering:-webkit-optimize-contrast;filter:contrast(1.16) saturate(1.09)!important}}
@media (max-width:720px){.topbar .brand-logo-image,.page-header .brand-logo-image,.report-topbar .brand-logo-image{height:48px!important;max-width:66vw!important;filter:contrast(1.14) saturate(1.08)!important}}

/* v6.1.4 PC vector-text brand: avoid blurred raster lettering */
.shuttlex-brand-lockup{display:inline-flex;align-items:center;gap:12px;min-width:0;text-decoration:none!important}
.shuttlex-brand-mark{display:block;width:74px;height:64px;object-fit:contain;flex:0 0 auto}
.shuttlex-brand-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;line-height:1}
.shuttlex-brand-name{font-family:Arial,"Noto Sans KR",sans-serif;font-size:42px;line-height:.95;font-weight:900;font-style:italic;letter-spacing:-2.2px;white-space:nowrap;color:#0f172a;text-shadow:none}
.shuttlex-brand-name .x{background:linear-gradient(135deg,#84e51f 0%,#14c77b 45%,#128bf2 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.shuttlex-brand-tagline{margin-top:7px;font-family:Arial,"Noto Sans KR",sans-serif;font-size:13px;line-height:1.25;font-weight:750;letter-spacing:-.15px;white-space:nowrap;color:#475569}
.shuttlex-brand-lockup.is-dark .shuttlex-brand-name{color:#fff}
.shuttlex-brand-lockup.is-dark .shuttlex-brand-tagline{color:#f1f5f9}
@media(min-width:1024px){
  .topbar .shuttlex-brand-lockup,.page-header .shuttlex-brand-lockup,.report-topbar .shuttlex-brand-lockup{min-width:330px}
  .topbar .shuttlex-brand-mark,.page-header .shuttlex-brand-mark,.report-topbar .shuttlex-brand-mark{width:82px;height:70px}
  .topbar .shuttlex-brand-name,.page-header .shuttlex-brand-name,.report-topbar .shuttlex-brand-name{font-size:44px}
  .topbar .shuttlex-brand-tagline,.page-header .shuttlex-brand-tagline,.report-topbar .shuttlex-brand-tagline{font-size:13px}
}
@media(max-width:720px){
  .shuttlex-brand-lockup{gap:7px}
  .shuttlex-brand-mark{width:48px;height:42px}
  .shuttlex-brand-name{font-size:24px;letter-spacing:-1.2px}
  .shuttlex-brand-tagline{margin-top:4px;font-size:8px;letter-spacing:-.2px}
}

/* v6.1.4 brand wordmark safety space: prevent italic gradient X clipping */
.shuttlex-brand-lockup,
.shuttlex-brand-copy,
.shuttlex-brand-name{
  overflow:visible!important;
}
.shuttlex-brand-copy{
  min-width:max-content;
  padding-right:8px;
}
.shuttlex-brand-name{
  display:inline-block;
  width:max-content;
  max-width:none!important;
  padding-right:.20em;
  margin-right:-.02em;
}
.shuttlex-brand-name .x{
  display:inline-block;
  padding-right:.06em;
  margin-right:.01em;
}
@media(max-width:720px){
  .shuttlex-brand-copy{padding-right:5px}
  .shuttlex-brand-name{padding-right:.18em}
}

/* v6.1.5 brand mark asset-path fix and compact header sizing */
@media (min-width:1024px){
  .topbar .shuttlex-brand-mark,
  .page-header .shuttlex-brand-mark,
  .report-topbar .shuttlex-brand-mark,
  .site-header .shuttlex-brand-mark{
    width:68px!important;
    height:58px!important;
  }
  .site-footer .shuttlex-brand-mark{
    width:72px!important;
    height:62px!important;
  }
  .topbar .shuttlex-brand-lockup,
  .page-header .shuttlex-brand-lockup,
  .report-topbar .shuttlex-brand-lockup{
    gap:10px!important;
  }
}
@media (min-width:721px) and (max-width:1023px){
  .shuttlex-brand-mark{width:60px!important;height:52px!important}
}

/* v6.1.6 brand glyph safety: keep italic X fully visible */
.shuttlex-brand-lockup,
.shuttlex-brand-copy,
.shuttlex-brand-name,
.shuttlex-brand-name .x{
  overflow:visible!important;
}
.shuttlex-brand-copy{
  padding-top:4px;
  padding-bottom:3px;
  padding-right:14px!important;
}
.shuttlex-brand-name{
  line-height:1.12!important;
  padding-top:.05em;
  padding-right:.34em!important;
  margin-right:0!important;
}
.shuttlex-brand-name .x{
  position:relative;
  display:inline-block;
  padding-top:.04em;
  padding-right:.10em!important;
  transform:translateY(.01em);
}
@media(max-width:720px){
  .shuttlex-brand-copy{padding-top:2px;padding-bottom:2px;padding-right:8px!important}
  .shuttlex-brand-name{line-height:1.1!important;padding-right:.28em!important}
}

/* v6.1.10 PC wordmark glyph safety: keep the gradient X fully visible */
@media (min-width:1200px){
  .landing-brand-lockup,
  .topbar .shuttlex-brand-lockup,
  .page-header .shuttlex-brand-lockup,
  .report-topbar .shuttlex-brand-lockup,
  .footer-brand-lockup{
    overflow:visible!important;
  }
  .landing-brand-lockup .shuttlex-brand-copy,
  .topbar .shuttlex-brand-copy,
  .page-header .shuttlex-brand-copy,
  .report-topbar .shuttlex-brand-copy,
  .footer-brand-lockup .shuttlex-brand-copy{
    overflow:visible!important;
    padding-top:7px!important;
    padding-right:24px!important;
  }
  .landing-brand-lockup .shuttlex-brand-name,
  .topbar .shuttlex-brand-name,
  .page-header .shuttlex-brand-name,
  .report-topbar .shuttlex-brand-name,
  .footer-brand-lockup .shuttlex-brand-name{
    overflow:visible!important;
    line-height:1.22!important;
    padding-top:.10em!important;
    padding-right:.48em!important;
  }
  .landing-brand-lockup .shuttlex-brand-name .x,
  .topbar .shuttlex-brand-name .x,
  .page-header .shuttlex-brand-name .x,
  .report-topbar .shuttlex-brand-name .x,
  .footer-brand-lockup .shuttlex-brand-name .x{
    overflow:visible!important;
    font-style:normal!important;
    line-height:1.25!important;
    padding:.10em .16em .02em .02em!important;
    transform:skew(-9deg) translateY(.02em)!important;
    transform-origin:center!important;
  }
}

/* v6.1.13 compact authenticated PC brand */
@media (min-width:1200px){
  .topbar .shuttlex-brand-lockup,
  .page-header .shuttlex-brand-lockup,
  .report-topbar .shuttlex-brand-lockup{
    gap:8px!important;
    min-width:280px!important;
  }
  .topbar .shuttlex-brand-mark,
  .page-header .shuttlex-brand-mark,
  .report-topbar .shuttlex-brand-mark{
    width:56px!important;
    height:48px!important;
  }
  .topbar .shuttlex-brand-name,
  .page-header .shuttlex-brand-name,
  .report-topbar .shuttlex-brand-name{
    font-size:38px!important;
    letter-spacing:-1.9px!important;
  }
  .topbar .shuttlex-brand-tagline,
  .page-header .shuttlex-brand-tagline,
  .report-topbar .shuttlex-brand-tagline{
    margin-top:4px!important;
    font-size:11px!important;
  }
  .topbar{min-height:68px!important;}
}

/* v6.1.14 PC brand title/tagline compact vertical spacing */
@media (min-width:1200px){
  .landing-brand-lockup .shuttlex-brand-copy,
  .topbar .shuttlex-brand-copy,
  .page-header .shuttlex-brand-copy,
  .report-topbar .shuttlex-brand-copy{
    gap:0!important;
  }
  .landing-brand-lockup .shuttlex-brand-tagline,
  .topbar .shuttlex-brand-tagline,
  .page-header .shuttlex-brand-tagline,
  .report-topbar .shuttlex-brand-tagline{
    margin-top:2px!important;
    line-height:1.12!important;
  }
}

/* v6.1.15 tighter brand title/tagline spacing on PC, including service request page */
@media (min-width:1200px){
  .landing-brand-lockup .shuttlex-brand-copy,
  .topbar .shuttlex-brand-copy,
  .page-header .shuttlex-brand-copy,
  .report-topbar .shuttlex-brand-copy,
  .footer-brand-lockup .shuttlex-brand-copy{
    gap:0!important;
  }
  .landing-brand-lockup .shuttlex-brand-tagline,
  .topbar .shuttlex-brand-tagline,
  .page-header .shuttlex-brand-tagline,
  .report-topbar .shuttlex-brand-tagline,
  .footer-brand-lockup .shuttlex-brand-tagline{
    margin-top:0!important;
    transform:translateY(-1px);
    line-height:1.08!important;
  }
}

/* v6.1.16 definitive PC brand vertical-gap fix */
@media (min-width:1200px){
  .landing-header .landing-brand-lockup .shuttlex-brand-copy,
  .topbar > .brand .shuttlex-brand-copy,
  .topbar .brand .shuttlex-brand-copy,
  .page-header .shuttlex-brand-copy,
  .report-topbar .shuttlex-brand-copy,
  .footer-brand-lockup .shuttlex-brand-copy{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:0!important;
    padding-top:1px!important;
    padding-bottom:1px!important;
  }

  .landing-header .landing-brand-lockup .shuttlex-brand-name,
  .topbar > .brand .shuttlex-brand-name,
  .topbar .brand .shuttlex-brand-name,
  .page-header .shuttlex-brand-name,
  .report-topbar .shuttlex-brand-name,
  .footer-brand-lockup .shuttlex-brand-name{
    line-height:.92!important;
    margin:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
  }

  .landing-header .landing-brand-lockup .shuttlex-brand-tagline,
  .topbar > .brand .shuttlex-brand-tagline,
  .topbar .brand .shuttlex-brand-tagline,
  .page-header .shuttlex-brand-tagline,
  .report-topbar .shuttlex-brand-tagline,
  .footer-brand-lockup .shuttlex-brand-tagline{
    display:block!important;
    margin-top:-2px!important;
    padding-top:0!important;
    line-height:1!important;
    transform:none!important;
  }
}

/* v6.1.25 — transparent brand mark on dark headers and footers */
.shuttlex-brand-lockup,
.shuttlex-brand-lockup .shuttlex-brand-mark,
.footer-brand-lockup,
.footer-brand-lockup .shuttlex-brand-mark,
.site-footer .brand,
.site-footer .shuttlex-brand-lockup {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.shuttlex-brand-mark {
  display: block;
  object-fit: contain;
  object-position: center;
}
