@import url('https://cdn.jsdelivr.net/npm/krds-uiux@1.0.3/resources/cdn/krds.min.css');/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties;
@layer theme, base, components, utilities;
@layer theme {
  :root, :host {
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
      "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
      "Courier New", monospace;
    --spacing: 0.25rem;
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}
@layer base {
  *,
  ::after,
  ::before,
  ::backdrop,
  ::file-selector-button {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 solid;
  }
  html,
  :host {
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings, normal);
    font-variation-settings: var(--default-font-variation-settings, normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr {
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]) {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-size: inherit;
    font-weight: inherit;
  }
  a {
    color: inherit;
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b,
  strong {
    font-weight: bolder;
  }
  code,
  kbd,
  samp,
  pre {
    font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings, normal);
    font-variation-settings: var(--default-mono-font-variation-settings, normal);
    font-size: 1em;
  }
  small {
    font-size: 80%;
  }
  sub,
  sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  sub {
    bottom: -0.25em;
  }
  sup {
    top: -0.5em;
  }
  table {
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring {
    outline: auto;
  }
  progress {
    vertical-align: baseline;
  }
  summary {
    display: list-item;
  }
  ol,
  ul,
  menu {
    list-style: none;
  }
  img,
  svg,
  video,
  canvas,
  audio,
  iframe,
  embed,
  object {
    display: block;
    vertical-align: middle;
  }
  img,
  video {
    max-width: 100%;
    height: auto;
  }
  button,
  input,
  select,
  optgroup,
  textarea,
  ::file-selector-button {
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    border-radius: 0;
    background-color: transparent;
    opacity: 1;
  }
  :where(select:is([multiple], [size])) optgroup {
    font-weight: bolder;
  }
  :where(select:is([multiple], [size])) optgroup option {
    padding-inline-start: 20px;
  }
  ::file-selector-button {
    margin-inline-end: 4px;
  }
  ::placeholder {
    opacity: 1;
  }
  @supports (not (-webkit-appearance: -apple-pay-button))  or
    (contain-intrinsic-size: 1px) {
    ::placeholder {
      color: currentcolor;
      @supports (color: color-mix(in lab, red, red)) {
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea {
    resize: vertical;
  }
  ::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value {
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit {
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper {
    padding: 0;
  }
  ::-webkit-datetime-edit,
  ::-webkit-datetime-edit-year-field,
  ::-webkit-datetime-edit-month-field,
  ::-webkit-datetime-edit-day-field,
  ::-webkit-datetime-edit-hour-field,
  ::-webkit-datetime-edit-minute-field,
  ::-webkit-datetime-edit-second-field,
  ::-webkit-datetime-edit-millisecond-field,
  ::-webkit-datetime-edit-meridiem-field {
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator {
    line-height: 1;
  }
  :-moz-ui-invalid {
    box-shadow: none;
  }
  button,
  input:where([type="button"], [type="reset"], [type="submit"]),
  ::file-selector-button {
    appearance: button;
  }
  ::-webkit-inner-spin-button,
  ::-webkit-outer-spin-button {
    height: auto;
  }
  [hidden]:where(:not([hidden="until-found"])) {
    display: none !important;
  }
}
@layer utilities {
  .visible {
    visibility: visible;
  }
  .sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
    border-width: 0;
  }
  .absolute {
    position: absolute;
  }
  .fixed {
    position: fixed;
  }
  .start {
    inset-inline-start: var(--spacing);
  }
  .end {
    inset-inline-end: var(--spacing);
  }
  .container {
    width: 100%;
    @media (width >= 40rem) {
      max-width: 40rem;
    }
    @media (width >= 48rem) {
      max-width: 48rem;
    }
    @media (width >= 64rem) {
      max-width: 64rem;
    }
    @media (width >= 80rem) {
      max-width: 80rem;
    }
    @media (width >= 96rem) {
      max-width: 96rem;
    }
  }
  .block {
    display: block;
  }
  .flex {
    display: flex;
  }
  .grid {
    display: grid;
  }
  .hidden {
    display: none;
  }
  .inline {
    display: inline;
  }
  .table {
    display: table;
  }
  .w-60 {
    width: calc(var(--spacing) * 60);
  }
  .ring {
    --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
    box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
  }
}
:root {
  --ink: #18211f;
  --muted: #6e7774;
  --line: #dfe5e2;
  --soft: #f4f7f5;
  --paper: #fff;
  --teal: #087f72;
  --teal-dark: #05665d;
  --coral: #ef6b57;
  --gold: #d99d25;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  background: #f6f8f7;
  color: var(--ink);
  font-family: Pretendard,"Noto Sans KR",Inter,system-ui,sans-serif;
  letter-spacing: 0;
}
button,input {
  font: inherit;
}
button,a {
  touch-action: manipulation;
}
button {
  cursor: pointer;
}
a {
  text-decoration: none;
  color: inherit;
}
.app-shell {
  min-height: 100vh;
}
.topbar {
  height: 68px;
  display: grid;
  grid-template-columns: 220px minmax(260px,520px) 1fr;
  align-items: center;
  gap: 30px;
  padding: 0 28px;
  border-bottom: 1px solid var(--line);
  background: rgba(255,255,255,.96);
  position: sticky;
  top: 0;
  z-index: 20;
}
.brand {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font-size: 20px;
  font-weight: 900;
}
.brand-mark {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  background: var(--teal);
  color: #fff;
  border-radius: 8px;
}
.global-search {
  height: 40px;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 0 13px;
  background: #f1f4f3;
  border: 1px solid transparent;
  border-radius: 8px;
  color: var(--muted);
}
.global-search:focus-within {
  border-color: var(--teal);
  background: #fff;
}
.global-search input {
  width: 100%;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--ink);
  font-size: 14px;
}
.top-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 18px;
  font-size: 14px;
  font-weight: 700;
}
.text-button {
  border: 0;
  background: transparent;
  color: inherit;
  font-weight: 700;
}
.icon-button {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 8px;
}
.primary-button,.secondary-button,.today-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 0;
  border-radius: 8px;
  font-weight: 800;
}
.primary-button {
  height: 40px;
  padding: 0 16px;
  background: var(--teal);
  color: #fff;
}
.primary-button:hover {
  background: var(--teal-dark);
}
.mobile-menu-button {
  display: none;
}
.workspace {
  display: grid;
  grid-template-columns: 220px minmax(560px,1fr) 330px;
  min-height: calc(100vh - 68px);
}
.sidebar {
  padding: 26px 18px;
  border-right: 1px solid var(--line);
  background: #fff;
}
.sidebar nav {
  display: grid;
  gap: 6px;
}
.sidebar nav button {
  height: 42px;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 0 12px;
  border: 0;
  background: transparent;
  border-radius: 7px;
  font-size: 14px;
  font-weight: 700;
  color: #59635f;
  text-align: left;
}
.sidebar nav button.active {
  color: var(--teal);
  background: #eaf5f2;
}
.sidebar-trip {
  margin-top: 32px;
  padding: 16px 12px;
  border-top: 1px solid var(--line);
}
.sidebar-trip p {
  margin: 0 0 9px;
  font-size: 11px;
  color: var(--muted);
  font-weight: 800;
  text-transform: uppercase;
}
.sidebar-trip strong,.sidebar-trip span {
  display: block;
}
.sidebar-trip strong {
  font-size: 14px;
}
.sidebar-trip span {
  margin-top: 4px;
  font-size: 12px;
  color: var(--muted);
}
.mini-progress {
  height: 5px;
  background: #e9eeec;
  margin-top: 12px;
  overflow: hidden;
  border-radius: 5px;
}
.mini-progress i {
  display: block;
  height: 100%;
  background: var(--coral);
  transition: width .25s;
}
.contribution-card {
  display: flex;
  gap: 9px;
  margin: 16px 6px 0;
  padding: 12px;
  border: 1px solid #ead7a8;
  background: #fff9eb;
  border-radius: 7px;
}
.contribution-card>span {
  width: 25px;
  height: 25px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 6px;
  background: #f1d78f;
  color: #74530b;
}
.contribution-card>span.unlocked {
  background: #dcefe9;
  color: var(--teal);
}
.contribution-card strong {
  display: block;
  font-size: 11.5px;
}
.contribution-card p {
  margin: 3px 0 0;
  color: #776536;
  font-size: 9.5px;
  line-height: 1.45;
}
.content {
  padding: 38px clamp(24px,4vw,58px) 70px;
  min-width: 0;
}
.content-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
}
.eyebrow {
  margin: 0 0 8px;
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}
.content-heading h1 {
  margin: 0;
  font-size: clamp(28px,3vw,40px);
  line-height: 1.22;
  letter-spacing: 0;
  font-weight: 900;
}
.secondary-button {
  height: 38px;
  padding: 0 12px;
  background: #fff;
  border: 1px solid var(--line);
  color: #43504b;
  font-size: 13px;
  white-space: nowrap;
}
.planner-strip {
  margin-top: 28px;
  padding: 20px;
  display: grid;
  grid-template-columns: minmax(270px,1fr) auto;
  align-items: center;
  gap: 22px;
  background: #e8f3f0;
  border: 1px solid #c8e3dd;
  border-radius: 8px;
}
.planner-copy {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}
.feature-icon {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  background: var(--teal);
  color: #fff;
  border-radius: 8px;
}
.planner-copy h2 {
  margin: 0;
  font-size: 17px;
}
.planner-copy p {
  margin: 5px 0 0;
  font-size: 13px;
  color: #57706a;
}
.planner-inputs {
  display: flex;
  align-items: stretch;
  gap: 7px;
}
.planner-inputs button {
  min-width: 145px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  text-align: left;
  background: #fff;
  border: 1px solid #c8ddd8;
  border-radius: 7px;
  color: #2d3b37;
}
.planner-inputs button span {
  font-size: 12px;
  font-weight: 800;
}
.planner-inputs small {
  display: block;
  font-size: 10px;
  color: var(--muted);
  font-weight: 700;
}
.planner-inputs button.generate {
  min-width: auto;
  background: var(--coral);
  border-color: var(--coral);
  color: #fff;
  font-weight: 900;
  white-space: nowrap;
}
.section-title {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin: 34px 0 14px;
}
.section-title h2 {
  margin: 0;
  font-size: 20px;
}
.section-title p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 12px;
}
.filter-pills {
  display: flex;
  gap: 5px;
}
.filter-pills button {
  height: 30px;
  padding: 0 10px;
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 15px;
  font-size: 11px;
  font-weight: 800;
  color: #5b6662;
}
.filter-pills button.selected {
  background: var(--ink);
  color: #fff;
  border-color: var(--ink);
}
.plan-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 14px;
}
.plan-card {
  position: relative;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 8px;
  transition: transform .18s,box-shadow .18s;
}
.plan-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(32,52,47,.09);
}
.plan-main {
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: left;
  color: inherit;
}
.plan-image {
  height: 150px;
  position: relative;
  overflow: hidden;
}
.plan-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.status {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 4px 7px;
  border-radius: 5px;
  color: #fff;
  font-size: 10px;
  font-weight: 900;
}
.status.coral {
  background: var(--coral);
}
.status.mint {
  background: var(--teal);
}
.status.gold {
  background: #9a6a09;
}
.status.violet {
  background: #6558d3;
}
.plan-body {
  padding: 13px;
}
.plan-meta {
  margin: 0;
  color: var(--teal);
  font-size: 10px;
  font-weight: 900;
}
.plan-body h3 {
  margin: 7px 0 16px;
  padding-right: 26px;
  font-size: 15px;
  line-height: 1.45;
}
.plan-footer {
  display: flex;
  align-items: center;
  color: var(--muted);
  font-size: 11px;
}
.plan-footer strong {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  color: #59635f;
}
.avatar-small {
  width: 25px;
  height: 25px;
  display: grid;
  place-items: center;
  margin-right: 6px;
  border-radius: 50%;
  background: #e9efed;
  color: #40504a;
  font-size: 8px;
  font-weight: 900;
}
.card-actions {
  position: absolute;
  right: 8px;
  bottom: 56px;
  display: grid;
  gap: 5px;
}
.card-actions button,.card-actions a {
  width: 27px;
  height: 27px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: rgba(255,255,255,.95);
  color: #5f6b67;
}
.card-actions button.saved {
  color: var(--coral);
}
.today-panel {
  padding: 28px 22px;
  border-left: 1px solid var(--line);
  background: #fff;
}
.panel-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.panel-heading p {
  margin: 0 0 4px;
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}
.panel-heading h2 {
  margin: 0;
  font-size: 19px;
}
.panel-heading>span {
  padding: 4px 7px;
  background: #fff0ed;
  color: #bd4634;
  border-radius: 5px;
  font-size: 10px;
  font-weight: 900;
}
.weather-row {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin: 18px 0;
  padding: 12px;
  background: #f5f7f6;
  border-radius: 7px;
  font-size: 12px;
  color: var(--muted);
}
.weather-row span:first-child {
  color: var(--ink);
  font-weight: 800;
}
.weather-row strong {
  margin-left: auto;
  color: var(--ink);
  font-size: 19px;
}
.timeline {
  margin: 6px 0 18px;
}
.timeline-item {
  display: grid;
  grid-template-columns: 42px 14px 1fr;
  gap: 7px;
  min-height: 70px;
}
.timeline-item time {
  padding-top: 1px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}
.timeline-item i {
  position: relative;
  width: 9px;
  height: 9px;
  margin-top: 4px;
  border: 2px solid #aeb9b5;
  border-radius: 50%;
}
.timeline-item i:after {
  content: "";
  position: absolute;
  top: 10px;
  left: 2px;
  width: 1px;
  height: 50px;
  background: #dbe1df;
}
.timeline-item:last-child i:after {
  display: none;
}
.timeline-item i.current {
  background: var(--coral);
  border-color: var(--coral);
}
.timeline-item strong {
  display: block;
  font-size: 13px;
}
.timeline-item p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.45;
}
.today-button {
  width: 100%;
  height: 38px;
  background: #fff;
  border: 1px solid var(--teal);
  color: var(--teal);
  font-size: 12px;
}
.copy-rule {
  display: flex;
  gap: 10px;
  margin-top: 18px;
  padding: 13px;
  background: #fff8e8;
  border: 1px solid #edd9a6;
  border-radius: 7px;
  color: #775619;
}
.copy-rule svg {
  flex: 0 0 auto;
}
.copy-rule strong {
  display: block;
  font-size: 12px;
}
.copy-rule p {
  margin: 4px 0 0;
  font-size: 10.5px;
  line-height: 1.5;
}
.copy-rule button {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  margin-top: 8px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #755515;
  font-size: 10.5px;
  font-weight: 900;
}
.mobile-bottom-nav {
  display: none;
}
.modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 60;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(18,27,24,.58);
  backdrop-filter: blur(4px);
}
.plan-dialog,.planner-dialog {
  width: min(1020px,100%);
  max-height: calc(100vh - 48px);
  overflow: auto;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 24px 70px rgba(8,22,18,.24);
}
.dialog-image {
  height: 230px;
  position: relative;
  overflow: hidden;
}
.dialog-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(.72);
}
.close-button {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 7px;
  background: rgba(255,255,255,.94);
  color: var(--ink);
}
.close-button.light {
  position: static;
  flex: 0 0 auto;
  background: #f0f3f2;
}
.dialog-title {
  position: absolute;
  left: 28px;
  right: 70px;
  bottom: 24px;
  color: #fff;
}
.dialog-title p,.dialog-title span {
  margin: 0;
  font-size: 11px;
  font-weight: 800;
}
.dialog-title h2 {
  margin: 6px 0;
  font-size: 28px;
  letter-spacing: 0;
}
.dialog-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) 255px;
}
.dialog-main {
  padding: 24px 28px 38px;
}
.plan-stats {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.plan-stats span {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 7px 9px;
  border: 1px solid var(--line);
  border-radius: 6px;
  font-size: 11px;
}
.plan-summary {
  margin: 18px 0 24px;
  color: #55615d;
  font-size: 14px;
  line-height: 1.7;
}
.day-section {
  margin-top: 20px;
}
.day-section>header {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  padding-bottom: 9px;
  border-bottom: 1px solid var(--line);
}
.day-section>header>time {
  width: 52px;
  color: var(--teal);
  font-size: 17px;
  font-weight: 900;
}
.day-section>header div {
  display: flex;
  align-items: center;
  gap: 10px;
}
.day-section>header strong {
  font-size: 13px;
}
.day-section>header span {
  display: flex;
  align-items: center;
  gap: 3px;
  color: var(--muted);
  font-size: 10.5px;
}
.dialog-stop {
  display: grid;
  grid-template-columns: 48px 10px 1fr;
  gap: 9px;
  min-height: 57px;
}
.dialog-stop>time {
  font-size: 11px;
  font-weight: 800;
  color: var(--muted);
}
.kind-dot {
  width: 8px;
  height: 8px;
  margin-top: 4px;
  border-radius: 50%;
  background: var(--teal);
}
.kind-dot.flight {
  background: #6558d3;
}
.kind-dot.food {
  background: var(--coral);
}
.kind-dot.stay {
  background: var(--gold);
}
.kind-dot.rest {
  background: #9ba4a1;
}
.dialog-stop strong {
  display: block;
  font-size: 12.5px;
}
.dialog-stop p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 10.5px;
}
.dialog-side {
  padding: 24px 18px;
  border-left: 1px solid var(--line);
  background: #f7f9f8;
}
.budget-box {
  padding: 15px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 7px;
}
.budget-box small,.budget-box span {
  display: block;
  color: var(--muted);
  font-size: 10px;
}
.budget-box strong {
  display: block;
  margin: 5px 0;
  font-size: 20px;
}
.copy-button {
  width: 100%;
  height: 43px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin-top: 12px;
  border: 0;
  border-radius: 7px;
  background: var(--coral);
  color: #fff;
  font-weight: 900;
}
.gate-caption {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  color: #7a6431;
  font-size: 9.5px;
  line-height: 1.45;
}
.side-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  margin-top: 18px;
}
.side-actions button {
  height: 35px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  font-size: 11px;
  font-weight: 800;
}
.side-actions button.saved {
  color: var(--coral);
}
.full-page-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  margin-top: 12px;
  color: var(--teal);
  font-size: 10.5px;
  font-weight: 900;
}
.planner-dialog {
  width: min(760px,100%);
}
.planner-dialog>header {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 23px 26px 18px;
  border-bottom: 1px solid var(--line);
}
.planner-dialog>header p {
  margin: 0 0 4px;
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}
.planner-dialog>header h2 {
  margin: 0;
  font-size: 21px;
}
.give-take {
  display: flex;
  gap: 10px;
  margin: 16px 26px 0;
  padding: 12px 14px;
  border: 1px solid #ead7a8;
  border-radius: 7px;
  background: #fff9eb;
  color: #6d5520;
}
.give-take svg {
  flex: 0 0 auto;
}
.give-take strong {
  display: block;
  font-size: 12px;
}
.give-take p {
  margin: 3px 0 0;
  font-size: 10.5px;
  line-height: 1.5;
}
.planner-dialog form {
  padding: 22px 26px 24px;
}
.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
.form-grid label {
  display: grid;
  gap: 6px;
}
.form-grid label.wide {
  grid-column: 1/-1;
}
.form-grid label>span,.planner-dialog legend {
  font-size: 11px;
  font-weight: 900;
}
.form-grid small {
  color: var(--muted);
  font-weight: 600;
}
.form-grid input,.form-grid textarea {
  width: 100%;
  border: 1px solid #cdd6d2;
  border-radius: 7px;
  padding: 10px 11px;
  outline: 0;
  color: var(--ink);
  background: #fff;
}
.form-grid textarea {
  min-height: 70px;
  resize: vertical;
}
.form-grid input:focus,.form-grid textarea:focus {
  border-color: var(--teal);
}
.planner-dialog fieldset {
  margin: 18px 0 0;
  padding: 0;
  border: 0;
}
.pace-options {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 7px;
  margin-top: 7px;
}
.pace-options label {
  display: grid;
  gap: 2px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
}
.pace-options label.selected {
  border-color: var(--teal);
  background: #edf7f4;
}
.pace-options input {
  position: absolute;
  opacity: 0;
}
.pace-options strong {
  font-size: 12px;
}
.pace-options span {
  color: var(--muted);
  font-size: 10px;
}
.publish-check {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-top: 17px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #f7f9f8;
}
.publish-check.required {
  border-color: #e1c16d;
  background: #fff9e9;
}
.publish-check input {
  margin-top: 3px;
}
.publish-check span {
  display: grid;
  gap: 2px;
}
.publish-check strong {
  font-size: 11.5px;
}
.publish-check small {
  color: var(--muted);
  font-size: 9.5px;
}
.publish-check em {
  margin-left: auto;
  padding: 3px 5px;
  border-radius: 4px;
  background: #9c7218;
  color: #fff;
  font-size: 8px;
  font-style: normal;
  font-weight: 900;
}
.planner-dialog footer {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 18px;
}
.cancel-button {
  height: 40px;
  padding: 0 15px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  font-weight: 800;
}
.toast {
  position: fixed;
  left: 50%;
  bottom: 30px;
  z-index: 100;
  max-width: calc(100% - 28px);
  padding: 11px 17px;
  border-radius: 7px;
  background: var(--ink);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  opacity: 0;
  transform: translate(-50%,12px);
  pointer-events: none;
  transition: .2s;
}
.toast.show {
  opacity: 1;
  transform: translate(-50%,0);
}
.empty-state {
  display: grid;
  place-items: center;
  min-height: 260px;
  padding: 40px;
  border: 1px dashed #cdd6d2;
  border-radius: 8px;
  background: #fff;
  text-align: center;
  color: var(--muted);
}
.empty-state h3 {
  margin: 12px 0 4px;
  color: var(--ink);
  font-size: 16px;
}
.empty-state p {
  margin: 0;
  font-size: 12px;
}
.empty-state.large {
  min-height: 420px;
}
.empty-state .primary-button {
  margin-top: 15px;
}
.subview>h1,.subview .my-trip-heading h1 {
  margin: 7px 0 5px;
  font-size: 30px;
}
.subview>p,.my-trip-heading p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
}
.back-link {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--teal);
  font-size: 11px;
  font-weight: 900;
}
.saved-list {
  display: grid;
  gap: 9px;
  margin-top: 25px;
}
.saved-list>button {
  display: grid;
  grid-template-columns: 110px 1fr auto;
  align-items: center;
  gap: 14px;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  text-align: left;
}
.saved-list img {
  width: 110px;
  height: 76px;
  object-fit: cover;
  border-radius: 5px;
}
.saved-list div {
  display: grid;
  gap: 4px;
}
.saved-list small {
  color: var(--teal);
  font-size: 9px;
  font-weight: 900;
}
.saved-list strong {
  font-size: 14px;
}
.saved-list span {
  color: var(--muted);
  font-size: 10px;
}
.my-trip-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
}
.my-trip-board {
  display: grid;
  grid-template-columns: minmax(0,1fr) 220px;
  gap: 14px;
  margin-top: 24px;
}
.my-day,.my-trip-board>aside {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.my-day>header {
  display: flex;
  justify-content: space-between;
  margin-bottom: 18px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
}
.my-day>header span {
  color: var(--teal);
  font-weight: 900;
}
.my-day>div {
  display: grid;
  grid-template-columns: 48px 10px 1fr;
  gap: 8px;
  min-height: 64px;
}
.my-day time {
  font-size: 11px;
  font-weight: 800;
  color: var(--muted);
}
.my-day i {
  width: 8px;
  height: 8px;
  margin-top: 4px;
  border-radius: 50%;
  background: var(--coral);
}
.my-day span {
  display: grid;
  align-content: start;
}
.my-day small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 10px;
}
.my-trip-board aside h3 {
  margin: 0 0 4px;
  font-size: 11px;
}
.my-trip-board aside p {
  margin: 0 0 18px;
  color: var(--muted);
  font-size: 10.5px;
}
.my-trip-board aside button {
  display: flex;
  align-items: center;
  gap: 5px;
  border: 0;
  background: transparent;
  color: var(--teal);
  font-size: 10.5px;
  font-weight: 900;
}
.public-plan-page {
  min-height: 100vh;
  background: #f6f8f7;
}
.public-topbar {
  height: 66px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 max(22px,calc((100% - 1120px)/2));
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.public-topbar>a:last-child {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--teal);
  font-size: 12px;
  font-weight: 900;
}
.public-cover {
  height: 340px;
  position: relative;
  overflow: hidden;
}
.public-cover>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: brightness(.62);
}
.public-cover-copy {
  position: absolute;
  left: max(22px,calc((100% - 1040px)/2));
  right: 22px;
  bottom: 48px;
  color: #fff;
}
.public-cover-copy p,.public-cover-copy span {
  margin: 0;
  font-size: 12px;
  font-weight: 800;
}
.public-cover-copy h1 {
  max-width: 700px;
  margin: 8px 0;
  font-size: 38px;
  line-height: 1.2;
}
.public-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) 270px;
  gap: 30px;
  max-width: 1040px;
  margin: 0 auto;
  padding: 38px 22px 80px;
}
.public-main {
  min-width: 0;
}
.public-summary {
  margin: 20px 0 12px;
  color: #52605b;
  font-size: 15px;
  line-height: 1.75;
}
.tag-row {
  display: flex;
  gap: 6px;
}
.tag-row span {
  padding: 5px 8px;
  border-radius: 5px;
  background: #e8f3f0;
  color: var(--teal);
  font-size: 10px;
  font-weight: 900;
}
.public-day {
  margin-top: 34px;
}
.public-day>header {
  display: flex;
  gap: 13px;
  align-items: center;
  padding-bottom: 12px;
  border-bottom: 2px solid var(--ink);
}
.public-day>header>time {
  color: var(--teal);
  font-size: 20px;
  font-weight: 900;
}
.public-day h2 {
  margin: 0;
  font-size: 16px;
}
.public-day>header span {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
  color: var(--muted);
  font-size: 10px;
}
.public-day-list {
  padding-top: 17px;
}
.public-day-list>div {
  display: grid;
  grid-template-columns: 52px 10px 1fr;
  gap: 10px;
  min-height: 72px;
}
.public-day-list time {
  font-size: 11px;
  font-weight: 800;
  color: var(--muted);
}
.public-day-list i {
  width: 9px;
  height: 9px;
  margin-top: 4px;
  border-radius: 50%;
  background: var(--teal);
}
.public-day-list i.flight {
  background: #6558d3;
}
.public-day-list i.food {
  background: var(--coral);
}
.public-day-list i.stay {
  background: var(--gold);
}
.public-day-list i.rest {
  background: #9ba4a1;
}
.public-day-list span {
  display: grid;
  align-content: start;
}
.public-day-list strong {
  font-size: 13px;
}
.public-day-list small {
  margin-top: 4px;
  color: var(--muted);
  font-size: 11px;
}
.public-side {
  position: sticky;
  top: 86px;
  height: fit-content;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}
.public-side>div:first-child small,.public-side>div:first-child span {
  display: block;
  color: var(--muted);
  font-size: 10px;
}
.public-side>div:first-child strong {
  display: block;
  margin: 5px 0;
  font-size: 21px;
}
.public-actions {
  display: grid;
  gap: 7px;
  margin-top: 16px;
}
.public-actions .copy-button {
  margin: 0;
}
.public-actions>button {
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  font-size: 11px;
  font-weight: 800;
}
.public-side>p {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  margin: 15px 0 0;
  color: var(--muted);
  font-size: 9.5px;
  line-height: 1.45;
}
.account-page {
  min-height: 100vh;
  background: #f6f8f7;
}
.account-page>header {
  height: 66px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 max(22px,calc((100% - 980px)/2));
  border-bottom: 1px solid var(--line);
  background: #fff;
}
.account-page>header>div {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 11px;
}
.account-page>header>div a {
  display: flex;
  align-items: center;
  gap: 5px;
  color: var(--muted);
}
.account-page>section {
  max-width: 980px;
  margin: 0 auto;
  padding: 46px 22px;
}
.account-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
.account-heading h1 {
  margin: 0;
  font-size: 32px;
}
.account-heading p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 12px;
}
.account-empty {
  display: grid;
  place-items: center;
  min-height: 420px;
  margin-top: 25px;
  border: 1px dashed #cdd6d2;
  border-radius: 8px;
  background: #fff;
  text-align: center;
  color: var(--muted);
}
.account-empty h2 {
  margin: 14px 0 4px;
  color: var(--ink);
  font-size: 17px;
}
.account-empty p {
  margin: 0;
  font-size: 11px;
}
.account-empty .primary-button {
  margin-top: 16px;
}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible {
  outline: 3px solid rgba(8,127,114,.3);
  outline-offset: 2px;
}
@media (max-width:1180px) {
  .workspace {
    grid-template-columns: 190px minmax(0,1fr);
  }
  .today-panel {
    display: none;
  }
  .topbar {
    grid-template-columns: 190px 1fr auto;
  }
  .planner-strip {
    grid-template-columns: 1fr;
  }
  .planner-inputs {
    justify-content: flex-start;
  }
  .plan-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media (max-width:760px) {
  body {
    padding-bottom: 62px;
  }
  .topbar {
    height: auto;
    min-height: 64px;
    grid-template-columns: auto 1fr auto;
    padding: 10px 14px;
  }
  .mobile-menu-button {
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border: 0;
    background: transparent;
  }
  .brand span:last-child {
    display: none;
  }
  .global-search {
    grid-row: 2;
    grid-column: 1/-1;
  }
  .top-actions .text-button,.icon-button {
    display: none;
  }
  .workspace {
    display: block;
  }
  .sidebar {
    display: none;
    position: fixed;
    inset: 64px 0 0 0;
    z-index: 50;
    padding-top: 20px;
  }
  .sidebar.mobile-open {
    display: block;
  }
  .content {
    padding: 26px 14px 60px;
  }
  .content-heading {
    align-items: flex-start;
  }
  .content-heading h1 {
    font-size: 28px;
  }
  .secondary-button {
    display: none;
  }
  .planner-strip {
    padding: 16px;
  }
  .planner-inputs {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .planner-inputs button {
    min-width: 0;
  }
  .planner-inputs button.generate {
    grid-column: 1/-1;
    justify-content: center;
    height: 42px;
  }
  .section-title {
    align-items: flex-start;
    flex-direction: column;
  }
  .filter-pills {
    max-width: 100%;
    overflow-x: auto;
  }
  .plan-grid {
    grid-template-columns: 1fr;
  }
  .plan-image {
    height: 190px;
  }
  .primary-button {
    padding: 0 12px;
  }
  .mobile-bottom-nav {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
    display: grid;
    grid-template-columns: repeat(4,1fr);
    height: 58px;
    border-top: 1px solid var(--line);
    background: #fff;
  }
  .mobile-bottom-nav button {
    display: grid;
    place-items: center;
    align-content: center;
    gap: 2px;
    border: 0;
    background: transparent;
    color: #7a8581;
  }
  .mobile-bottom-nav button.active {
    color: var(--teal);
  }
  .mobile-bottom-nav span {
    font-size: 9px;
    font-weight: 800;
  }
  .modal-backdrop {
    padding: 0;
    align-items: end;
  }
  .plan-dialog,.planner-dialog {
    max-height: 94vh;
    border-radius: 8px 8px 0 0;
  }
  .dialog-image {
    height: 190px;
  }
  .dialog-title {
    left: 18px;
    bottom: 18px;
  }
  .dialog-title h2 {
    font-size: 21px;
  }
  .dialog-layout {
    display: block;
  }
  .dialog-main {
    padding: 19px 17px;
  }
  .dialog-side {
    border: 0;
    border-top: 1px solid var(--line);
  }
  .planner-dialog>header,.planner-dialog form {
    padding-left: 18px;
    padding-right: 18px;
  }
  .form-grid {
    grid-template-columns: 1fr;
  }
  .form-grid label.wide {
    grid-column: auto;
  }
  .pace-options {
    grid-template-columns: 1fr;
  }
  .my-trip-board {
    grid-template-columns: 1fr;
  }
  .saved-list>button {
    grid-template-columns: 82px 1fr auto;
  }
  .saved-list img {
    width: 82px;
    height: 65px;
  }
  .public-cover {
    height: 280px;
  }
  .public-cover-copy {
    bottom: 28px;
  }
  .public-cover-copy h1 {
    font-size: 27px;
  }
  .public-layout {
    display: block;
    padding-top: 24px;
  }
  .public-side {
    position: static;
    margin-top: 26px;
  }
  .public-topbar {
    padding: 0 14px;
  }
  .public-topbar>a:last-child {
    font-size: 10px;
  }
  .account-page>section {
    padding: 32px 14px;
  }
  .account-heading {
    align-items: flex-start;
    gap: 18px;
  }
  .account-heading h1 {
    font-size: 27px;
  }
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
    }
  }
}
:root{--night:#10161d;--night-2:#17222d;--cream:#f6f5ee;--paper:#fff;--ink:#17212b;--muted:#78818b;--line:#e5e8e2;--lime:#c5ff4a;--blue:#8bd7ff;--orange:#ff8b52;--red:#ff6b68}
body{background:var(--cream);color:var(--ink);font-family:Arial,"Noto Sans KR",sans-serif}.calculator-app{min-height:100vh;background:var(--cream)}.calc-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100% - 1240px)/2));background:var(--night);color:#f4f6f2}.calc-brand{display:flex;align-items:center;gap:10px;color:#fff;font-size:20px;font-weight:950;letter-spacing:-.04em}.brand-spark{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--lime);color:var(--night);font-size:17px}.calc-brand em{margin-left:2px;padding:3px 5px;border:1px solid #536170;border-radius:4px;color:#a6b1bb;font-size:8px;font-style:normal;letter-spacing:.08em}.calc-nav{display:flex;gap:28px;margin-left:auto;margin-right:36px}.calc-nav a{color:#acb6bd;font-size:12px;font-weight:800}.calc-nav a:hover{color:var(--lime)}.header-action{display:flex;align-items:center;gap:7px;height:38px;padding:0 13px;border:1px solid #465463;border-radius:7px;background:transparent;color:#fff;font-size:11px;font-weight:800}.hero{display:grid;grid-template-columns:minmax(0,1fr) 520px;gap:50px;max-width:1240px;margin:0 auto;padding:82px 22px 78px}.hero-copy{padding-top:20px}.hero-kicker,.section-eyebrow{display:flex;align-items:center;gap:7px;color:#5f787f;font-size:10px;font-weight:950;letter-spacing:.1em}.hero-kicker{color:var(--lime);letter-spacing:.02em}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px #c5ff4a22}.hero h1{margin:22px 0 20px;color:var(--night);font-size:clamp(42px,5vw,70px);line-height:1.02;letter-spacing:-.08em;font-weight:950}.hero h1 span{color:#61717c}.hero-copy>p{margin:0;color:#6e7982;font-size:16px;line-height:1.75;letter-spacing:-.04em}.hero-proof{display:flex;align-items:center;gap:7px;margin-top:24px;color:#63716f;font-size:11px;font-weight:800}.hero-proof svg{color:#5e948c}.hero-orbit{position:relative;min-height:350px}.orbit-ring{position:absolute;left:105px;top:15px;width:350px;height:320px;border:1px solid #d1d8ce;border-radius:50%;transform:rotate(-18deg)}.orbit-ring:before,.orbit-ring:after{content:"";position:absolute;border:1px solid #dbe0d8;border-radius:50%}.orbit-ring:before{inset:32px -20px;transform:rotate(32deg)}.orbit-ring:after{inset:68px 15px;transform:rotate(-50deg)}.orbit-core{position:absolute;left:219px;top:110px;width:118px;height:118px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border-radius:50%;background:var(--night);color:var(--lime);box-shadow:0 0 0 15px #10161d12,0 22px 50px #10161d38}.orbit-core span{font-size:8px;font-weight:950;line-height:1.05;letter-spacing:.18em;text-align:center}.orbit-card{position:absolute;z-index:2;display:grid;gap:4px;padding:15px 17px;border-radius:10px;background:#fff;border:1px solid #dfe5dc;box-shadow:0 15px 35px #18231a12}.orbit-card small{color:#7a8585;font-size:10px;font-weight:800}.orbit-card strong{font-size:25px;letter-spacing:-.06em}.orbit-card strong span{margin-left:2px;font-size:11px;letter-spacing:-.02em}.orbit-card i{color:#6e9582;font-size:9px;font-style:normal;font-weight:900}.orbit-one{top:22px;right:5px}.orbit-two{bottom:28px;left:45px}.ad-shell{position:relative;display:flex;align-items:center;gap:14px;border:1px solid #dce2d7;border-radius:10px;background:#fff}.ad-label{position:absolute;top:9px;right:12px;color:#aab2aa;font-size:8px;font-weight:900;letter-spacing:.08em}.ad-shell>div{display:flex;align-items:center;gap:11px}.ad-shell>div svg{flex:0 0 auto;color:#769489}.ad-shell strong{display:block;font-size:13px}.ad-shell p{margin:4px 0 0;color:#8a928d;font-size:10px}.ad-shell button{display:flex;align-items:center;gap:5px;margin-left:auto;border:0;background:transparent;color:#597f74;font-size:11px;font-weight:950;white-space:nowrap}.top-ad{max-width:1196px;margin:0 auto 26px;padding:18px 20px;background:#eff4e7;border-color:#dde7cd}.top-ad>div{padding-right:40px}.calculator-layout{display:grid;grid-template-columns:1fr 1.07fr;gap:26px;max-width:1196px;margin:0 auto;padding:20px 0 80px}.input-column>h2,.result-topline h2{margin:12px 0 4px;font-size:27px;letter-spacing:-.07em}.input-column>h2{color:var(--night)}.section-lead{margin:0 0 18px;color:#929a94;font-size:11px}.input-card{margin-top:12px;padding:20px;border:1px solid var(--line);border-radius:11px;background:#fff}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:17px;color:#91a099}.card-heading>div{display:flex;align-items:center;gap:11px}.card-heading>div>div{display:grid;gap:3px}.card-heading strong{color:var(--ink);font-size:13px}.card-heading small{color:#9ca5a0;font-size:10px}.step-num{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:var(--night);color:var(--lime);font-size:9px;font-weight:950}.brand-select-wrap{position:relative}.brand-select-wrap select{width:100%;height:48px;appearance:none;padding:0 42px 0 13px;border:1px solid #dce2db;border-radius:7px;background:#fafbf8;color:var(--ink);outline:0;font-size:13px;font-weight:900}.brand-select-wrap svg{position:absolute;right:13px;top:15px;pointer-events:none;color:#87928a}.brand-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:9px}.brand-mini-stats span{display:grid;gap:5px;padding:10px;border-radius:7px;background:#f6f7f3}.brand-mini-stats small{color:#9aa39c;font-size:9px}.brand-mini-stats b{font-size:11px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.money-field{display:grid;gap:6px}.money-field>span,.scenario-label{display:flex;justify-content:space-between;color:#7a8580;font-size:10px;font-weight:900}.money-field small{color:#adb4ae;font-size:9px;font-weight:600}.money-field input{width:100%;height:42px;padding:0 11px;border:1px solid #dce2db;border-radius:7px;background:#fff;color:var(--ink);outline:0;text-align:right;font-size:13px;font-weight:900}.money-field input:focus{border-color:#9ebd73;box-shadow:0 0 0 3px #c5ff4a24}.cash-check{display:flex;align-items:center;gap:9px;margin-top:15px;padding:11px;border-radius:8px}.cash-check.ok{background:#f0f8df;color:#506d45}.cash-check.not-ok{background:#fff0ec;color:#aa5d54}.cash-check>span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#d4ec9c;font-size:12px;font-weight:950}.cash-check.not-ok>span{background:#ffd2c9}.cash-check strong,.cash-check small{display:block}.cash-check strong{font-size:11px}.cash-check small{margin-top:3px;font-size:9px}.scenario-label{margin-top:18px}.scenario-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:7px}.scenario-tabs button{display:grid;gap:5px;padding:10px 6px;border:1px solid #e3e7e1;border-radius:7px;background:#fff;color:#88928c;text-align:left}.scenario-tabs button span{font-size:10px;font-weight:900}.scenario-tabs button strong{color:var(--ink);font-size:11px}.scenario-tabs button.active{border-color:#a9d160;background:#f4fbe6;box-shadow:inset 0 0 0 1px #c5ff4a}.result-column{min-width:0}.result-sticky{padding:25px;border-radius:12px;background:var(--night);color:#fff;box-shadow:0 18px 45px #10161d22}.result-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.result-topline .section-eyebrow{color:#98b1b2}.result-topline h2{color:#fff}.result-topline h2 span{font-size:11px;color:#8fa1a1;letter-spacing:0}.verdict{display:flex;align-items:center;gap:6px;padding:7px 9px;border-radius:20px;font-size:10px;font-weight:950;white-space:nowrap}.verdict span{width:6px;height:6px;border-radius:50%;background:currentColor}.verdict.good{background:#c5ff4a;color:#253713}.verdict.warn{background:#fff0c3;color:#795c12}.verdict.bad{background:#ffd6d4;color:#943934}.profit-card{margin-top:24px;padding:20px;border:1px solid #374550;border-radius:10px;background:#19242e}.profit-label{display:flex;align-items:center;gap:5px;color:#9faeb2;font-size:11px;font-weight:900}.profit-label svg{color:#708887}.profit-card>strong{display:block;margin:9px 0 4px;color:var(--lime);font-size:38px;letter-spacing:-.07em}.profit-card>p{margin:0;color:#84949a;font-size:10px}.profit-bar{height:6px;margin-top:18px;overflow:hidden;border-radius:7px;background:#33424a}.profit-bar i{display:block;height:100%;border-radius:7px;background:var(--lime)}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:17px;overflow:hidden;border:1px solid #36444e;border-radius:9px;background:#36444e}.metric{display:grid;gap:5px;padding:14px 13px;background:var(--night)}.metric span{color:#84939a;font-size:9px;font-weight:800}.metric strong{font-size:16px;letter-spacing:-.05em}.metric small{color:#697a80;font-size:8px}.result-note{display:flex;align-items:flex-start;gap:8px;margin-top:16px;padding:12px;border-radius:8px;background:#202d35;color:#a8b6b5}.result-note svg{flex:0 0 auto;margin-top:1px;color:#9fc874}.result-note p{margin:0;font-size:9.5px;line-height:1.55}.result-note strong{color:#e4eddf}.result-actions{display:grid;grid-template-columns:1fr 100px;gap:7px;margin-top:15px}.primary-cta,.ghost-cta{height:42px;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:7px;font-size:11px;font-weight:950}.primary-cta{border:0;background:var(--lime);color:var(--night)}.ghost-cta{border:1px solid #4a5b63;background:transparent;color:#c4d0cb}.result-ad{margin-top:13px;padding:17px 17px;border-color:#dfe5d8}.result-ad .ad-label{color:#a7b19f}.result-ad>div{display:block;padding-right:35px}.result-ad strong{font-size:12px}.result-ad button{color:#597d5f}.compare-section{max-width:1196px;margin:0 auto;padding:45px 0 80px}.compare-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.compare-heading h2{margin:11px 0 4px;font-size:27px;letter-spacing:-.07em}.compare-heading p{margin:0;color:#8d9690;font-size:11px}.compare-heading button{display:flex;align-items:center;gap:5px;border:0;background:transparent;color:#587d6f;font-size:11px;font-weight:950}.compare-table{margin-top:22px;overflow:hidden;border:1px solid #e2e6df;border-radius:10px;background:#fff}.compare-row{display:grid;grid-template-columns:1.5fr .7fr 1fr 1fr .65fr 1fr;align-items:center;min-height:58px;padding:0 18px;border-bottom:1px solid #eef0eb;color:#66716c;font-size:10px}.compare-row:last-child{border-bottom:0}.compare-head{min-height:39px;background:#f4f6f1;color:#9aa39c;font-size:9px;font-weight:900}.compare-row button{display:flex;align-items:center;justify-content:center;gap:3px;width:max-content;padding:7px 9px;border:1px solid #dbe3d7;border-radius:5px;background:#f8fbf3;color:#65815e;font-size:9px;font-weight:900}.brand-cell{display:flex;align-items:center;gap:8px;color:var(--ink);font-weight:950}.brand-cell i{width:8px;height:8px;border-radius:50%;background:var(--lime)}.brand-cell i.sky{background:#83c9f5}.brand-cell i.orange{background:#ff8e54}.brand-cell i.violet{background:#a58afa}.brand-cell i.cyan{background:#6fe2d0}.how-section{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;padding:82px max(22px,calc((100% - 1196px)/2));background:#e9efe6}.how-copy h2{margin:15px 0;font-size:40px;line-height:1.05;letter-spacing:-.08em}.how-copy h2 span{color:#6f8373}.how-copy>p{max-width:390px;color:#748178;font-size:12px;line-height:1.7}.how-steps{display:grid;gap:11px;align-content:center}.how-step{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start;padding:17px 0;border-bottom:1px solid #d6ded1}.how-step:last-child{border-bottom:0}.how-step>span{color:#8ba488;font-size:11px;font-weight:950}.how-step strong{font-size:14px}.how-step p{margin:5px 0 0;color:#7a897b;font-size:11px}.bottom-ad{max-width:1196px;margin:34px auto;padding:20px 22px;background:#fffdf0;border-color:#eee2ae}.bottom-ad>div{display:block;padding-right:35px}.bottom-ad strong{font-size:13px}.calc-footer{display:flex;align-items:center;gap:26px;max-width:1196px;margin:0 auto;padding:30px 0 42px;color:#8e978f}.calc-footer .calc-brand{color:var(--ink);font-size:15px}.calc-footer .brand-spark{width:22px;height:22px;font-size:13px}.calc-footer p{margin:0;font-size:9px}.calc-footer>span{margin-left:auto;font-size:8px;letter-spacing:.08em}
@media(max-width:960px){.hero{grid-template-columns:1fr;padding-top:55px}.hero-orbit{max-width:560px;width:100%;margin:auto}.calculator-layout{grid-template-columns:1fr;padding-left:22px;padding-right:22px}.compare-section{padding-left:22px;padding-right:22px}.how-section{padding-left:22px;padding-right:22px}.top-ad,.bottom-ad{margin-left:22px;margin-right:22px}.calc-footer{margin-left:22px;margin-right:22px}.calc-nav{display:none}}
@media(max-width:620px){.calc-header{height:64px;padding:0 15px}.calc-brand{font-size:17px}.header-action{padding:0 9px;font-size:10px}.hero{padding:45px 18px 28px}.hero h1{font-size:42px}.hero-copy>p{font-size:13px}.hero-orbit{min-height:250px;transform:scale(.82);transform-origin:center top;margin-bottom:-38px}.orbit-ring{left:45px;top:4px}.orbit-core{left:159px;top:80px}.orbit-one{right:0}.orbit-two{left:0;bottom:12px}.top-ad,.bottom-ad{align-items:flex-start;margin:0 14px 17px;padding:25px 13px 13px}.top-ad>div,.bottom-ad>div{display:block;padding-right:0}.top-ad>div svg,.bottom-ad>div svg{display:none}.ad-shell button{margin-top:8px;margin-left:auto}.calculator-layout{display:block;padding:18px 14px 55px}.input-card{padding:16px}.result-column{margin-top:18px}.result-sticky{padding:18px}.result-topline h2{font-size:22px}.profit-card>strong{font-size:33px}.compare-section{padding:35px 14px 55px}.compare-heading{align-items:flex-start;flex-direction:column}.compare-table{overflow:auto}.compare-row{min-width:640px}.how-section{display:block;padding:52px 18px}.how-copy h2{font-size:34px}.how-steps{margin-top:35px}.calc-footer{display:block;margin:0;padding:25px 18px 35px}.calc-footer p{margin:14px 0}.calc-footer>span{display:block}.brand-mini-stats b{font-size:10px}}
@media print{.calc-header,.hero,.top-ad,.input-column,.compare-section,.how-section,.bottom-ad,.calc-footer,.result-ad{display:none}.calculator-layout{display:block;padding:0}.result-sticky{box-shadow:none;background:#fff;color:#111;border:1px solid #ddd}.result-topline h2{color:#111}.profit-card{background:#f3f5f0;color:#111}.metric{background:#fff;border-color:#ddd}.metric-grid{background:#ddd}.result-note{background:#f3f5f0;color:#333}.primary-cta,.ghost-cta{display:none}}

.section-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:15px}.section-title-row h2{margin-bottom:4px}.reset-button{display:flex;align-items:center;gap:5px;padding:7px 9px;border:1px solid #dbe2d9;border-radius:6px;background:#fff;color:#76817a;font-size:10px;font-weight:900}.reset-button:hover{border-color:#a9c873;color:#4d7053}.data-caption{margin:10px 1px 0;color:#a0aaa1;font-size:9px;line-height:1.5}.advanced-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:17px;padding:11px 0 0;border:0;border-top:1px solid #eef1eb;background:transparent;color:#6d7c73;font-size:10px;font-weight:900;text-align:left}.advanced-toggle svg{transition:transform .2s}.advanced-toggle svg.turned{transform:rotate(180deg)}.advanced-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:13px;padding:12px;border-radius:8px;background:#f7f9f5}.result-breakdown{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:14px;overflow:hidden;border:1px solid #34434a;border-radius:8px;background:#34434a}.result-breakdown div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;background:#17232c}.result-breakdown span{color:#7f9195;font-size:9px}.result-breakdown b{font-size:10px}.risk-box,.safe-box{display:grid;gap:6px;margin-top:13px;padding:12px;border-radius:8px;font-size:9px}.risk-box{background:#332a29;color:#ffd0c9}.risk-box strong{color:#fff0dd;font-size:10px}.safe-box{display:flex;align-items:center;background:#26352c;color:#cce5a9}.safe-box svg{flex:0 0 auto;color:#c5ff4a}.result-actions{margin-top:14px}.share-link{display:flex;align-items:center;justify-content:center;gap:5px;width:100%;margin-top:11px;border:0;background:transparent;color:#a8c9a7;font-size:10px;font-weight:900}.ad-shell a,.compare-heading>a{display:flex;align-items:center;gap:5px;margin-left:auto;color:#597f74;font-size:11px;font-weight:950;white-space:nowrap}.compare-heading>a{margin-bottom:2px}.selected-row{background:#f5faed}.brand-cell em{margin-left:2px;padding:2px 4px;border-radius:3px;background:#def3aa;color:#527135;font-size:8px;font-style:normal}.positive{color:#547d50;font-weight:950}.negative{color:#bd625b;font-weight:950}

@media(max-width:620px){.section-title-row{align-items:flex-start}.reset-button{margin-top:3px}.advanced-fields{padding:10px}.result-breakdown{font-size:9px}.ad-shell a{margin-top:8px;margin-left:auto}.compare-heading>a{margin:5px 0 0}}

/* KRDS readability scale: larger type for a public-service style calculator */
.calculator-app{font-size:15px}
.calc-header{height:84px}
.calc-brand{font-size:24px}
.calc-nav{gap:32px}
.calc-nav a{font-size:14px}
.header-action{height:44px;padding:0 16px;font-size:13px}
.hero-kicker,.section-eyebrow{font-size:12px}
.hero h1{font-size:clamp(50px,5.8vw,78px)}
.hero-copy>p{font-size:18px}
.hero-proof{font-size:13px}
.input-column>h2,.result-topline h2,.compare-heading h2{font-size:32px}
.section-lead{font-size:14px}
.card-heading strong{font-size:16px}
.card-heading small{font-size:12px}
.step-num{width:32px;height:32px;font-size:11px}
.brand-select-wrap select{height:54px;font-size:16px}
.brand-select-wrap svg{top:18px}
.brand-mini-stats small{font-size:11px}
.brand-mini-stats b{font-size:14px}
.data-caption{font-size:11px}
.money-field>span,.scenario-label{font-size:13px}
.money-field small{font-size:11px}
.money-field input{height:50px;font-size:16px}
.cash-check strong{font-size:13px}
.cash-check small{font-size:11px}
.advanced-toggle{font-size:13px}
.scenario-tabs button span{font-size:12px}
.scenario-tabs button strong{font-size:14px}
.result-topline h2 span{font-size:14px}
.verdict{font-size:12px}
.profit-label{font-size:13px}
.profit-card>strong{font-size:46px}
.profit-card>p{font-size:12px}
.metric span{font-size:11px}
.metric strong{font-size:19px}
.metric small{font-size:10px}
.result-breakdown span{font-size:11px}
.result-breakdown b{font-size:12px}
.risk-box,.safe-box{font-size:11px}
.risk-box strong{font-size:12px}
.result-note p{font-size:11px}
.primary-cta,.ghost-cta{height:48px;font-size:13px}
.share-link{font-size:12px}
.ad-shell strong{font-size:15px}
.ad-shell p{font-size:12px}
.ad-shell a,.compare-heading>a{font-size:13px}
.compare-heading p{font-size:13px}
.compare-row{font-size:12px}
.compare-head{font-size:11px}
.compare-row button{font-size:11px}
.how-copy h2{font-size:44px}
.how-copy>p{font-size:14px}
.how-step strong{font-size:16px}
.how-step p{font-size:13px}
.calc-footer p{font-size:11px}

@media(max-width:620px){
  .calc-header{height:72px}
  .calc-brand{font-size:20px}
  .calc-nav{gap:18px}
  .header-action{height:40px;font-size:12px}
  .hero h1{font-size:46px}
  .hero-copy>p{font-size:15px;line-height:1.7}
  .input-column>h2,.result-topline h2,.compare-heading h2{font-size:28px}
  .section-lead{font-size:13px}
  .card-heading strong{font-size:15px}
  .card-heading small{font-size:11px}
  .brand-mini-stats b{font-size:12px}
  .money-field input{height:48px;font-size:16px}
  .profit-card>strong{font-size:40px}
  .metric strong{font-size:17px}
  .how-copy h2{font-size:38px}
}

.task-progress{display:flex;align-items:center;gap:9px;margin:18px 0 22px;padding:11px 14px;border:1px solid #dfe7db;border-radius:8px;background:#f8fbf5;color:#7d897f}.task-progress span{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:800;white-space:nowrap}.task-progress span.active{color:#3b6b43}.task-progress b{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#e4eed8;color:#5f805c;font-size:10px}.task-progress span.active b{background:#256ef4;color:#fff}.task-progress i{display:block;width:18px;height:1px;background:#d5ded1}.result-sticky{position:sticky;top:18px}.result-explainer{margin:5px 0 0;color:#91a1a5;font-size:11px}.mobile-result-cta{display:none}

@media(max-width:960px){.result-sticky{position:static}}
@media(max-width:620px){.task-progress{gap:4px;margin:14px 0 18px;padding:9px 8px;justify-content:space-between}.task-progress span{gap:3px;font-size:9px}.task-progress b{width:19px;height:19px;font-size:9px}.task-progress i{width:7px}.mobile-result-cta{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:48px;margin-top:14px;border:0;border-radius:7px;background:#256ef4;color:#fff;font-size:14px;font-weight:900}.result-explainer{font-size:10px}}

.trust-screen-section{max-width:1196px;margin:0 auto 38px;padding:25px 26px;border:1px solid #e3e8e1;border-radius:14px;background:#fff}.trust-screen-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.trust-screen-heading h2{margin:9px 0 5px;color:var(--night);font-size:26px;letter-spacing:-.07em}.trust-screen-heading p{margin:0;color:#58616a;font-size:12px}.trust-screen-heading>a{display:flex;align-items:center;gap:5px;color:#2e6b44;font-size:11px;font-weight:900;white-space:nowrap}.trust-screen-body{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:20px}.trust-screen-list{border-top:1px solid #e8ece7}.trust-screen-row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;min-height:61px;border-bottom:1px solid #edf0eb}.trust-state{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;font-size:12px;font-weight:950}.trust-state.pass{background:#e5f3ce;color:#5a864b}.trust-state.check{background:#f0f2ed;color:#89948b}.trust-state.warn{background:#fff2ca;color:#97711f}.trust-screen-row strong{display:block;color:var(--ink);font-size:12px}.trust-screen-row small{display:block;margin-top:4px;color:#58616a;font-size:10px}.trust-screen-row>b{font-size:10px}.trust-screen-row>b.pass{color:#1b7a3d}.trust-screen-row>b.check{color:#8b948c}.trust-screen-row>b.warn{color:#8a5a00}.trust-screen-callout{display:grid;align-content:center;padding:20px;border-radius:11px;background:#f1f6ed}.trust-callout-icon{display:grid;place-items:center;width:38px;height:38px;margin-bottom:12px;border-radius:10px;background:#dceec7;color:#608b56}.trust-screen-callout strong{color:#3e573f;font-size:15px}.trust-screen-callout p{margin:8px 0 13px;color:#6c7d6d;font-size:11px;line-height:1.6}.trust-screen-callout small{color:#96a394;font-size:9px}
@media(max-width:960px){.trust-screen-section{margin-left:22px;margin-right:22px}.trust-screen-body{grid-template-columns:1fr}.trust-screen-callout{min-height:180px}}
@media(max-width:620px){.trust-screen-section{margin:0 14px 28px;padding:18px 14px}.trust-screen-heading{display:block}.trust-screen-heading h2{font-size:22px}.trust-screen-heading p{font-size:11px;line-height:1.5}.trust-screen-heading>a{margin-top:12px}.trust-screen-body{display:block;margin-top:14px}.trust-screen-row{grid-template-columns:25px 1fr;gap:8px;padding:8px 0}.trust-screen-row>b{grid-column:2}.trust-screen-callout{margin-top:14px;padding:16px}.trust-screen-callout p{font-size:10px}}

.risk-manifesto{max-width:1196px;margin:0 auto 28px;padding:30px 28px 28px;border-radius:14px;background:#12233d;color:#fff;box-shadow:0 18px 40px #12233d20}.risk-manifesto-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.risk-manifesto-heading .section-eyebrow{color:#b9df72}.risk-manifesto-heading h2{margin:11px 0 0;font-size:30px;line-height:1.1;letter-spacing:-.08em}.risk-manifesto-heading h2 span{color:#b9df72}.risk-manifesto-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:25px}.risk-manifesto-grid article{min-height:180px;padding:18px;border:1px solid #ffffff1e;border-radius:10px;background:#ffffff0a}.risk-manifesto-grid article>span{display:grid;place-items:center;width:26px;height:26px;margin-bottom:20px;border-radius:50%;background:#b9df72;color:#12233d;font-size:10px;font-weight:950}.risk-manifesto-grid strong{display:block;font-size:17px;line-height:1.35;letter-spacing:-.06em}.risk-manifesto-grid p{margin:12px 0 0;color:#aab9c1;font-size:11px;line-height:1.55}.hero-copy>p{max-width:590px}.hero-cta{background:#b9df72;color:#12233d}.hero h1 span{color:#256ef4}.hero-preview-cta{background:#b9df72;color:#12233d}
.radar-start-panel{position:relative;min-height:455px;padding:28px;border:1px solid #314a63;border-radius:18px;background:linear-gradient(145deg,#17304d 0%,#10243d 72%);color:#fff;box-shadow:0 22px 48px #12233d2c;overflow:hidden}.radar-start-panel::after{content:"";position:absolute;right:-90px;bottom:-125px;width:270px;height:270px;border:1px solid #b9df7244;border-radius:50%;box-shadow:0 0 0 20px #b9df7210,0 0 0 42px #b9df7208}.radar-start-heading{position:relative;z-index:1}.radar-start-heading .hero-preview-label{color:#b9df72}.radar-start-heading h2{margin:11px 0 10px;font-size:27px;line-height:1.15;letter-spacing:-.08em}.radar-start-heading h2 span{color:#b9df72}.radar-start-heading p{max-width:360px;margin:0;color:#aebec6;font-size:11px;line-height:1.6}.radar-search-label{position:relative;z-index:2;display:grid;gap:8px;margin-top:25px}.radar-search-label>span{color:#dce7e5;font-size:11px;font-weight:950}.radar-start-panel .brand-combobox-trigger{min-height:58px;border-color:#8395a0;background:#fff;color:var(--ink);box-shadow:0 8px 22px #0a172620}.radar-start-panel .brand-combobox-trigger small{color:#78867e}.radar-start-panel .brand-combobox-trigger svg{color:#78867e}.radar-start-steps{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:18px}.radar-start-steps>div{display:grid;gap:4px;padding:11px 10px;border:1px solid #ffffff1c;border-radius:9px;background:#ffffff0a}.radar-start-steps b{color:#b9df72;font-size:9px}.radar-start-steps strong{font-size:12px}.radar-start-steps span{color:#9eb0b7;font-size:9px}.radar-start-cta{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:45px;margin-top:17px;border:0;border-radius:8px;background:#b9df72;color:#12233d;font-size:11px;font-weight:950;transition:transform .18s,box-shadow .18s}.radar-start-cta:hover{transform:translateY(-2px);box-shadow:0 9px 18px #b9df7238}.trust-screen-next{display:flex;align-items:center;justify-content:center;gap:5px;margin:0 0 11px;padding:10px 11px;border-radius:7px;background:#dceec7;color:#3e573f;font-size:10px;font-weight:950}.trust-screen-next:hover{background:#cce6ad}
@media(max-width:960px){.radar-start-panel{max-width:560px;width:100%;min-height:0;margin:auto}}
@media(max-width:620px){.radar-start-panel{padding:21px 16px;border-radius:14px}.radar-start-heading h2{font-size:23px}.radar-start-heading p{font-size:10px}.radar-start-steps{gap:5px}.radar-start-steps>div{padding:9px 7px}.radar-start-steps strong{font-size:10px}.radar-start-steps span{font-size:8px}.radar-start-cta{height:43px;font-size:10px}}
@media(max-width:960px){.risk-manifesto{margin-left:22px;margin-right:22px}.risk-manifesto-grid{grid-template-columns:1fr 1fr}.risk-manifesto-grid article:last-child{grid-column:span 2}}
@media(max-width:620px){.risk-manifesto{margin:0 14px 18px;padding:22px 15px}.risk-manifesto-heading{display:block}.risk-manifesto-heading h2{font-size:25px}.risk-manifesto-grid{display:block;margin-top:18px}.risk-manifesto-grid article{min-height:0;margin-top:8px;padding:15px}.risk-manifesto-grid article>span{margin-bottom:12px}.risk-manifesto-grid strong{font-size:16px}.risk-manifesto-grid p{font-size:10px}.hero h1 span{color:#256ef4}}

/* 지역·상권 분석 */
.market-insight-section{max-width:1196px;margin:0 auto 28px;padding:25px 26px 20px;border:1px solid #dfe7dc;border-radius:14px;background:#f8fbf5;box-shadow:0 12px 30px #23341b0b}.market-insight-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.market-insight-heading h2{margin:9px 0 5px;color:var(--night);font-size:26px;letter-spacing:-.07em}.market-insight-heading p{margin:0;color:#77857b;font-size:12px}.market-data-badge{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid #dce8d5;border-radius:999px;background:#fff;color:#58715e;font-size:10px;font-weight:900;white-space:nowrap}.market-data-badge>span{width:7px;height:7px;border-radius:50%;background:#9dbd65}.market-insight-grid{display:grid;grid-template-columns:1.45fr repeat(3,1fr);gap:9px;margin-top:20px}.market-signal-card{min-height:112px;padding:14px;border:1px solid #e3eae1;border-radius:10px;background:#fff}.market-main-signal{padding:16px 17px;background:var(--night);color:#fff;border-color:var(--night)}.market-signal-top{display:flex;align-items:center;justify-content:space-between;color:#a8b9ad;font-size:11px;font-weight:900}.market-signal-top svg{color:var(--lime)}.market-pressure{display:block;margin-top:9px;font-size:28px;letter-spacing:-.08em}.market-pressure.low{color:var(--lime)}.market-pressure.mid{color:#ffe28c}.market-pressure.high{color:#ffafa0}.market-main-signal p{min-height:30px;margin:3px 0 10px;color:#a9b5b0;font-size:10px;line-height:1.45}.market-pressure-bar{height:5px;overflow:hidden;border-radius:9px;background:#38464a}.market-pressure-bar i{display:block;height:100%;border-radius:9px;background:var(--lime)}.market-pressure-bar.mid i{background:#f3c969}.market-pressure-bar.high i{background:#ff8c76}.market-signal-icon{display:grid;place-items:center;width:29px;height:29px;margin-bottom:9px;border-radius:8px;background:#eef6e6;color:#668e5d}.market-signal-card>span{display:block;color:#7b887f;font-size:10px;font-weight:900}.market-signal-card>strong{display:block;margin-top:6px;color:var(--night);font-size:20px;letter-spacing:-.06em}.market-signal-card>small{display:block;margin-top:5px;color:#a0aaa2;font-size:9px}.market-insight-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:13px;padding-top:13px;border-top:1px solid #e1e9df}.market-insight-foot>div{display:grid;grid-template-columns:auto 1fr;column-gap:7px;align-items:center}.market-foot-dot{grid-row:span 2;width:6px;height:6px;border-radius:50%;background:#82a879}.market-insight-foot strong{color:#5d7160;font-size:10px}.market-insight-foot p{grid-column:2;margin:3px 0 0;color:#829087;font-size:10px}.market-insight-foot small{color:#9ca79f;font-size:9px;white-space:nowrap}.market-loading-lines{display:grid;gap:8px;margin-top:19px}.market-loading-lines i{display:block;height:8px;border-radius:6px;background:linear-gradient(90deg,#34424a 15%,#536066 45%,#34424a 75%);background-size:200% 100%;animation:marketShimmer 1.2s infinite}.market-loading-lines i:nth-child(2){width:78%}.market-loading-lines i:nth-child(3){width:55%}@keyframes marketShimmer{0%{background-position:100% 0}100%{background-position:-100% 0}}.market-input-card{background:#fbfdf9}.market-select-field{display:grid;gap:7px}.market-select-field span{color:#6e7c72;font-size:11px;font-weight:900}.market-select-field select{width:100%;height:50px;padding:0 12px;border:1px solid #dce6d9;border-radius:8px;background:#fff;color:var(--ink);font-size:15px;font-weight:900;outline:0}.market-select-field select:focus{border-color:#89aa6f;box-shadow:0 0 0 3px #c5ff4a24}.selected-region-hint{display:flex;align-items:center;gap:6px;margin-top:10px;color:#638168;font-size:10px;font-weight:800}.selected-region-hint svg{color:#85a97b}
@media(max-width:960px){.market-insight-section{margin-left:22px;margin-right:22px}.market-insight-grid{grid-template-columns:1.3fr 1fr 1fr}.market-signal-card:last-child{grid-column:2 / span 2}}
@media(max-width:620px){.market-insight-section{margin:0 14px 18px;padding:18px 14px 15px}.market-insight-heading{display:block}.market-insight-heading h2{font-size:22px}.market-insight-heading p{font-size:11px;line-height:1.5}.market-data-badge{width:max-content;margin-top:12px}.market-insight-grid{grid-template-columns:1fr 1fr;margin-top:15px}.market-main-signal{grid-column:span 2}.market-signal-card:last-child{grid-column:auto}.market-insight-foot{display:block}.market-insight-foot p{font-size:10px}.market-insight-foot small{display:block;margin-top:11px}.market-select-field select{font-size:14px}.task-progress span{font-size:8px}.task-progress i{width:4px}}
.radar-start-cta{text-decoration:none}

/* 위험도 중심 첫 화면 */
.radar-start-panel{animation:radarPanelIn .65s cubic-bezier(.22,1,.36,1) both}.radar-start-panel .brand-combobox-trigger{animation:selectorPulse 2.8s ease-in-out infinite}.radar-start-cta{font-size:13px;letter-spacing:-.03em}.radar-start-steps>div{transition:transform .2s,border-color .2s,background .2s}.radar-start-steps>div:hover{transform:translateY(-3px);border-color:#b9df7266;background:#b9df7212}@keyframes radarPanelIn{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes selectorPulse{0%,100%{box-shadow:0 8px 22px #0a172620}50%{box-shadow:0 0 0 5px #b9df7230,0 10px 28px #0a17263c}}
.radar-start-panel.is-demo .brand-combobox-trigger>span{animation:brandLabelFlip .48s cubic-bezier(.22,1,.36,1) both}.radar-demo-hint{display:flex;align-items:center;gap:6px;margin-top:7px;color:#8da1a5;font-size:10px;opacity:.7;transition:color .2s,opacity .2s}.radar-demo-hint i{width:6px;height:6px;border-radius:50%;background:#8da1a5}.radar-demo-hint.is-active{color:#b9df72;opacity:1}.radar-demo-hint.is-active i{background:#b9df72;box-shadow:0 0 0 4px #b9df7224;animation:demoDot .7s ease-in-out infinite alternate}@keyframes brandLabelFlip{0%{opacity:0;transform:translateY(8px)}100%{opacity:1;transform:translateY(0)}}@keyframes demoDot{from{transform:scale(.7)}to{transform:scale(1.2)}}
.risk-dashboard{max-width:1196px;margin:0 auto 34px;padding:30px 28px 20px;border:1px solid #dbe5d8;border-radius:16px;background:#fff;scroll-margin-top:22px;animation:riskReveal .55s cubic-bezier(.22,1,.36,1) both}.risk-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px}.risk-dashboard-head h2{margin:10px 0 7px;color:var(--night);font-size:34px;line-height:1.08;letter-spacing:-.09em}.risk-dashboard-head h2 span{color:#256ef4}.risk-dashboard-head p{margin:0;color:#58616a;font-size:13px}.risk-dashboard-region{display:grid;gap:7px;min-width:230px;padding:15px;border:1px solid #e0e8dd;border-radius:10px;background:#f8fbf6}.risk-dashboard-region label{color:#607461;font-size:11px;font-weight:950}.risk-dashboard-region select{height:42px;padding:0 11px;border:1px solid #d4e0d2;border-radius:7px;background:#fff;color:var(--ink);font-size:14px;font-weight:900;outline:0}.risk-dashboard-region select:focus{border-color:#7ba7ed;box-shadow:0 0 0 3px #256ef41c}.risk-dashboard-region small{color:#839286;font-size:10px}.risk-verdict{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:25px;padding:18px 20px;border-radius:11px;background:var(--night);color:#fff}.risk-verdict-label{display:block;margin-bottom:6px;color:#9aadb0;font-size:11px;font-weight:900}.risk-verdict strong{display:block;color:var(--lime);font-size:21px;letter-spacing:-.06em}.risk-verdict p{margin:5px 0 0;color:#a8b7b5;font-size:11px}.risk-verdict p b{color:#fff}.risk-verdict-mark{display:grid;place-items:center;width:68px;height:68px;border:1px solid #b9df7266;border-radius:50%;color:var(--lime);font-size:14px;font-weight:950}.risk-signal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.risk-signal{min-height:180px;padding:16px;border:1px solid #e2e9df;border-radius:10px;background:#fbfdf9;animation:riskCardIn .55s cubic-bezier(.22,1,.36,1) both}.risk-signal:nth-child(2){animation-delay:70ms}.risk-signal:nth-child(3){animation-delay:140ms}.risk-signal:nth-child(4){animation-delay:210ms}.risk-signal-top{display:flex;align-items:center;justify-content:space-between}.risk-signal-top>span{color:#58616a;font-size:11px;font-weight:950}.risk-signal-top>div{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#edf5e8;color:#668a62}.risk-signal h3{margin:22px 0 7px;color:#54645a;font-size:12px}.risk-signal strong{display:block;color:var(--night);font-size:21px;letter-spacing:-.06em}.risk-signal p{min-height:36px;margin:6px 0 0;color:#58616a;font-size:10px;line-height:1.5}.risk-signal-pass{border-top:3px solid #91bb7b}.risk-signal-pass .risk-signal-top>div{background:#e5f3d7;color:#5c8f4f}.risk-signal-warn{border-top:3px solid #e7bd55}.risk-signal-warn .risk-signal-top>div{background:#fff2cd;color:#a2771e}.risk-signal-danger{border-top:3px solid #eb796a}.risk-signal-danger .risk-signal-top>div{background:#ffe3de;color:#bc5a4e}.risk-signal-check{border-top:3px solid #b9c4ba}.risk-signal-check .risk-signal-top>div{background:#eef1ec;color:#829087}.risk-dashboard-foot{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:16px;padding-top:15px;border-top:1px solid #edf1ea;color:#58616a;font-size:11px}.risk-dashboard-foot>span{display:flex;align-items:center;gap:6px}.risk-dashboard-foot svg{color:#739471}.risk-dashboard-foot a{display:flex;align-items:center;gap:4px;color:#0b50d0;font-weight:900;white-space:nowrap}@keyframes riskReveal{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes riskCardIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.secondary-tool{max-width:1196px;margin:0 auto 28px;border:1px solid #dfe7dc;border-radius:12px;background:#fff;overflow:hidden}.secondary-tool>summary{display:flex;align-items:center;gap:11px;padding:18px 22px;cursor:pointer;list-style:none;color:var(--night)}.secondary-tool>summary::-webkit-details-marker{display:none}.secondary-tool>summary>span{display:flex;align-items:center;gap:7px;font-size:15px;font-weight:950}.secondary-tool>summary>span svg{color:#668a62}.secondary-tool>summary small{color:#8a968d;font-size:11px}.secondary-tool>summary>svg{margin-left:auto;color:#58616a;transition:transform .2s}.secondary-tool[open]>summary{border-bottom:1px solid #e4ebe1;background:#f8fbf6}.secondary-tool[open]>summary>svg{transform:rotate(180deg)}.secondary-tool .calculator-layout{padding-top:24px}.secondary-tool .result-column{min-width:0}
@media(max-width:960px){.risk-dashboard{margin-left:22px;margin-right:22px}.risk-signal-grid{grid-template-columns:1fr 1fr}.secondary-tool{margin-left:22px;margin-right:22px}.secondary-tool>summary{flex-wrap:wrap}.secondary-tool>summary small{flex-basis:100%;margin-left:27px}}
@media(max-width:620px){.risk-dashboard{margin:0 14px 22px;padding:21px 15px 15px}.risk-dashboard-head{display:block}.risk-dashboard-head h2{font-size:28px}.risk-dashboard-head p{font-size:11px;line-height:1.55}.risk-dashboard-region{min-width:0;margin-top:17px;padding:12px}.risk-dashboard-region select{font-size:13px}.risk-verdict{align-items:flex-start;margin-top:17px;padding:15px}.risk-verdict strong{font-size:17px}.risk-verdict p{font-size:10px;line-height:1.45}.risk-verdict-mark{width:52px;height:52px;font-size:11px}.risk-signal-grid{grid-template-columns:1fr 1fr;gap:7px}.risk-signal{min-height:164px;padding:12px}.risk-signal h3{margin-top:16px;font-size:11px}.risk-signal strong{font-size:17px}.risk-signal p{font-size:9px}.risk-dashboard-foot{display:block;font-size:10px;line-height:1.5}.risk-dashboard-foot a{margin-top:10px}.secondary-tool{margin:0 14px 20px}.secondary-tool>summary{padding:15px 14px;gap:8px}.secondary-tool>summary>span{font-size:13px}.secondary-tool>summary small{font-size:10px;margin-left:24px}.secondary-tool .calculator-layout{padding:14px 0 20px}}

/* 50+ 가독성·모바일 최종 보정 */
html{-webkit-text-size-adjust:100%}
body{font-size:16px;line-height:1.55;overflow-x:clip;word-break:keep-all}
button,input,select{font:inherit}
.calculator-app{font-size:17px}
.hero-kicker,.section-eyebrow{font-size:14px;letter-spacing:0}
.hero-copy>p{font-size:20px;line-height:1.75}
.hero-proof{font-size:14px}
.radar-search-label>span{font-size:15px}
.radar-start-heading p{font-size:14px;line-height:1.7}
.radar-start-steps>div{padding:14px 12px}
.radar-start-steps b{font-size:12px}
.radar-start-steps strong{font-size:15px}
.radar-start-steps span{font-size:13px}
.radar-demo-hint{font-size:13px}
.radar-start-panel .brand-combobox-trigger{min-height:72px;padding:14px 18px}
.radar-start-panel .brand-combobox-trigger strong{font-size:19px}
.radar-start-panel .brand-combobox-trigger small{font-size:14px}
.brand-combobox-search input{height:52px;font-size:17px}
.brand-combobox-search small{font-size:13px}
.brand-combobox-options>button{padding:15px 16px}
.brand-combobox-options>button span{font-size:17px}
.brand-combobox-options>button small{font-size:14px}
.brand-combobox-options>p{font-size:13px}
.radar-start-cta{height:56px;font-size:16px}
.risk-dashboard-head h2{font-size:38px}
.risk-dashboard-head p{font-size:15px;line-height:1.65}
.risk-dashboard-region label{font-size:14px}
.risk-dashboard-region select{height:52px;font-size:17px}
.risk-dashboard-region small{font-size:13px}
.risk-verdict{padding:20px 22px}
.risk-verdict-label{font-size:13px}
.risk-verdict strong{font-size:25px}
.risk-verdict p{font-size:14px}
.risk-verdict-mark{width:76px;height:76px;font-size:16px}
.risk-signal{padding:18px}
.risk-signal-top>span{font-size:13px}
.risk-signal h3{font-size:15px}
.risk-signal strong{font-size:25px}
.risk-signal p{min-height:42px;font-size:13px;line-height:1.6}
.risk-dashboard-foot{font-size:14px;line-height:1.6}
.secondary-tool>summary{min-height:64px;padding:18px 22px}
.secondary-tool>summary>span{font-size:17px}
.secondary-tool>summary small{font-size:13px}
.how-copy>p{font-size:15px}
.how-step strong{font-size:18px}
.how-step p{font-size:14px}
.header-action{min-height:48px;font-size:14px}
.calc-nav a{font-size:15px}
:focus-visible{outline:3px solid #256ef4;outline-offset:3px}

@media(max-width:620px){
  .calc-header{height:76px;padding:0 14px}
  .calc-brand{font-size:21px}
  .header-action{height:48px;padding:0 12px;font-size:13px}
  .hero{gap:24px;padding:38px 14px 28px}
  .hero h1{font-size:clamp(40px,11vw,56px);line-height:1.1}
  .hero-copy>p{font-size:17px;line-height:1.75}
  .hero-kicker,.section-eyebrow{font-size:13px}
  .hero-proof{font-size:13px;line-height:1.5}
  .radar-start-panel{min-height:0;padding:22px 16px}
  .radar-start-heading h2{font-size:29px}
  .radar-start-heading p{font-size:14px}
  .radar-start-steps{grid-template-columns:1fr;gap:8px}
  .radar-start-steps>div{display:flex;align-items:center;gap:10px;padding:14px}
  .radar-start-steps b{font-size:12px}
  .radar-start-steps strong{font-size:16px}
  .radar-start-steps span{font-size:13px}
  .radar-start-panel .brand-combobox-trigger{min-height:74px}
  .radar-start-panel .brand-combobox-trigger strong{font-size:19px}
  .radar-start-panel .brand-combobox-trigger small{font-size:14px}
  .brand-combobox-search input{height:54px;font-size:17px}
  .brand-combobox-options>button{padding:16px}
  .brand-combobox-options>button span{font-size:17px}
  .brand-combobox-options>button small{font-size:14px}
  .radar-start-cta{height:58px;font-size:16px}
  .risk-manifesto{margin-left:14px;margin-right:14px}
  .risk-dashboard{margin:0 12px 22px;padding:22px 16px}
  .risk-dashboard-head h2{font-size:30px}
  .risk-dashboard-head p{font-size:14px}
  .risk-dashboard-region{padding:14px}
  .risk-dashboard-region select{height:54px;font-size:16px}
  .risk-verdict{padding:18px;gap:10px}
  .risk-verdict strong{font-size:22px}
  .risk-verdict p{font-size:13px}
  .risk-verdict-mark{width:62px;height:62px;font-size:14px}
  .risk-signal-grid{grid-template-columns:1fr;gap:10px}
  .risk-signal{min-height:0;padding:18px}
  .risk-signal h3{margin-top:18px;font-size:15px}
  .risk-signal strong{font-size:24px}
  .risk-signal p{min-height:0;font-size:13px}
  .risk-dashboard-foot{font-size:13px}
  .secondary-tool{margin:0 12px 20px}
  .secondary-tool>summary{min-height:64px;padding:17px 16px}
  .secondary-tool>summary>span{font-size:16px}
  .secondary-tool>summary small{font-size:13px}
  .input-card{padding:18px 16px}
  .field-grid,.advanced-fields{grid-template-columns:1fr}
  .money-field>span,.scenario-label{font-size:14px}
  .money-field input{height:54px;font-size:17px}
  .result-sticky{padding:20px 16px}
  .profit-card>strong{font-size:42px}
  .primary-cta,.ghost-cta{height:54px;font-size:15px}
  .how-section{padding:52px 18px}
  .how-copy h2{font-size:38px}
  .how-copy>p{font-size:15px}
  .how-step strong{font-size:18px}
  .how-step p{font-size:14px}
}
@media(max-width:390px){
  .calc-brand{font-size:18px}
  .header-action{padding:0 9px;font-size:12px}
  .hero h1{font-size:38px}
  .radar-start-heading h2{font-size:26px}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}

/* 브랜드 목록은 카드 밖으로 펼쳐지고, 목록 영역만 스크롤 */
.radar-start-panel{overflow:visible}
.radar-start-panel .brand-combobox{z-index:30}
.radar-start-panel .brand-combobox-panel{z-index:40;max-height:min(520px,calc(100vh - 150px))}
.radar-start-panel .brand-combobox-options{max-height:min(390px,calc(100vh - 260px));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
@media(max-width:620px){
  .radar-start-panel .brand-combobox-panel{max-height:calc(100vh - 120px)}
  .radar-start-panel .brand-combobox-options{max-height:calc(100vh - 220px)}
}

:root{--krds-font-family-base:'Pretendard GOV',Pretendard,"Noto Sans KR",sans-serif;--krds-color-light-primary-5:#ECF2FE;--krds-color-light-primary-50:#256EF4;--krds-color-light-primary-60:#0B50D0;--krds-color-light-primary-70:#083891;--krds-color-light-gray-0:#FFFFFF;--krds-color-light-gray-5:#F4F5F6;--krds-color-light-gray-20:#CDD1D5;--krds-color-light-gray-30:#B1B8BE;--krds-color-light-gray-60:#58616A;--krds-color-light-gray-70:#464C53;--krds-color-light-gray-90:#1E2124;--krds-color-light-success-5:#EAF6EC;--krds-color-light-success-50:#228738;--krds-color-light-warning-5:#FFF3DB;--krds-color-light-warning-50:#9E6A00;--krds-color-light-danger-5:#FDEFEC;--krds-color-light-danger-50:#DE3412;--krds-number-4:.6rem;--krds-number-6:1rem;--krds-number-8:1.6rem;--krds-number-10:2.4rem;--krds-radius-medium2:6px;--krds-radius-large2:8px;--krds-size-height-7:48px;--krds-size-height-8:56px;--krds-box-shadow-outline:0 0 0 4px var(--krds-color-light-primary-50);--night:var(--krds-color-light-gray-90);--night-2:#33363D;--cream:var(--krds-color-light-gray-5);--paper:var(--krds-color-light-gray-0);--ink:var(--krds-color-light-gray-90);--muted:var(--krds-color-light-gray-70);--line:var(--krds-color-light-gray-30);--lime:var(--krds-color-light-primary-50);--blue:var(--krds-color-light-primary-60);--orange:var(--krds-color-light-danger-50);--red:var(--krds-color-light-danger-50)}
body{font-family:var(--krds-font-family-base);font-size:17px;line-height:1.5;background:var(--krds-color-light-gray-5);color:var(--krds-color-light-gray-90)}
.calc-header{height:72px;background:var(--krds-color-light-gray-0);color:var(--krds-color-light-gray-90);border-bottom:1px solid var(--krds-color-light-gray-30);box-shadow:none}.calc-brand{color:var(--krds-color-light-gray-90);font-weight:700}.brand-spark{background:var(--krds-color-light-primary-50);color:#fff;border-radius:var(--krds-radius-medium2)}.calc-brand em{color:var(--krds-color-light-primary-60);border-color:var(--krds-color-light-primary-50)}.calc-nav a{color:var(--krds-color-light-gray-70)}.calc-nav a:hover{color:var(--krds-color-light-primary-60)}.header-action{height:48px;border:1px solid var(--krds-color-light-primary-50);border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-primary-5);color:var(--krds-color-light-primary-60);font-size:15px;font-weight:700}
.hero{padding-top:72px;padding-bottom:66px}.hero-kicker{color:var(--krds-color-light-primary-60)}.live-dot{background:var(--krds-color-light-primary-50);box-shadow:0 0 0 5px var(--krds-color-light-primary-5)}.hero h1{font-size:clamp(40px,5vw,52px);line-height:1.25;letter-spacing:-.04em;font-weight:700;color:var(--krds-color-light-gray-90)}.hero h1 span{color:var(--krds-color-light-primary-60)}.hero-copy>p{color:var(--krds-color-light-gray-70);font-size:17px;line-height:1.5}.hero-proof{color:var(--krds-color-light-gray-70)}.hero-proof svg{color:var(--krds-color-light-success-50)}.orbit-ring{border-color:#D6E0EB}.orbit-ring:before,.orbit-ring:after{border-color:#E6E8EA}.orbit-core{background:var(--krds-color-light-primary-50);color:#fff;box-shadow:none}.orbit-card{border-color:var(--krds-color-light-gray-30);border-radius:var(--krds-radius-large2);box-shadow:none}.orbit-card i{color:var(--krds-color-light-success-50)}
.section-eyebrow{color:var(--krds-color-light-primary-60)}.input-column>h2,.result-topline h2,.compare-heading h2{font-weight:700;letter-spacing:-.03em}.section-lead,.compare-heading p{color:var(--krds-color-light-gray-70);font-size:15px}.input-card{padding:24px;border-color:var(--krds-color-light-gray-30);border-radius:var(--krds-radius-large2);box-shadow:none}.step-num{background:var(--krds-color-light-primary-5);color:var(--krds-color-light-primary-60);border-radius:var(--krds-radius-medium2);font-size:13px}.card-heading strong{font-size:17px;font-weight:700}.card-heading small{color:var(--krds-color-light-gray-70);font-size:13px}.brand-select-wrap select{height:var(--krds-size-height-7);border-color:var(--krds-color-light-gray-60);border-radius:var(--krds-radius-medium2);background:#fff;font-size:17px;font-weight:400}.brand-mini-stats span{background:var(--krds-color-light-gray-5);border-radius:var(--krds-radius-medium2)}.brand-mini-stats small,.money-field>span,.scenario-label{color:var(--krds-color-light-gray-70);font-size:13px}.brand-mini-stats b{font-size:15px}.money-field input{height:var(--krds-size-height-7);border-color:var(--krds-color-light-gray-60);border-radius:var(--krds-radius-medium2);font-size:17px;font-weight:400}.cash-check.ok{background:var(--krds-color-light-success-5);color:var(--krds-color-light-success-50)}.cash-check.not-ok{background:var(--krds-color-light-danger-5);color:var(--krds-color-light-danger-50)}.scenario-tabs button{border-color:var(--krds-color-light-gray-30);border-radius:var(--krds-radius-medium2)}.scenario-tabs button.active{border-color:var(--krds-color-light-primary-50);background:var(--krds-color-light-primary-5);box-shadow:inset 0 0 0 1px var(--krds-color-light-primary-50)}
.result-sticky{background:var(--krds-color-light-gray-90);border-radius:var(--krds-radius-large2);box-shadow:none}.result-topline .section-eyebrow{color:#B1CEFB}.profit-card{background:#33363D;border-color:#58616A;border-radius:var(--krds-radius-large2)}.profit-card>strong{color:#A8C7FF}.metric-grid{background:var(--krds-color-light-gray-60);border-color:var(--krds-color-light-gray-60);border-radius:var(--krds-radius-large2)}.metric{background:var(--krds-color-light-gray-90)}.result-note{background:#33363D}.primary-cta{height:var(--krds-size-height-7);border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-primary-50);color:#fff;font-size:15px}.ghost-cta{height:var(--krds-size-height-7);border-radius:var(--krds-radius-medium2);font-size:15px}.verdict.good{background:var(--krds-color-light-success-5);color:var(--krds-color-light-success-50)}.verdict.warn{background:var(--krds-color-light-warning-5);color:var(--krds-color-light-warning-50)}.verdict.bad{background:var(--krds-color-light-danger-5);color:var(--krds-color-light-danger-50)}
.compare-section{padding-top:56px}.compare-table{border-color:var(--krds-color-light-gray-30);border-radius:var(--krds-radius-large2);box-shadow:none}.compare-head{background:var(--krds-color-light-gray-5)}.compare-row button{border-color:var(--krds-color-light-primary-50);border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-primary-5);color:var(--krds-color-light-primary-60);font-size:13px}.how-section{background:var(--krds-color-light-primary-5)}.how-copy h2{font-weight:700}.how-copy h2 span{color:var(--krds-color-light-primary-60)}.bottom-ad{background:var(--krds-color-light-warning-5);border-color:transparent}.calc-footer{border-top:1px solid var(--krds-color-light-gray-30)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:var(--krds-box-shadow-outline);outline-offset:2px}
@media(max-width:620px){.hero h1{font-size:2.4rem}.hero-copy>p{font-size:15px}.input-card{padding:16px}.card-heading strong{font-size:15px}.brand-select-wrap select,.money-field input{font-size:15px}.ad-shell p{font-size:13px}.ad-shell button{font-size:13px}}

/* Final KRDS application layer: use the official blue/gray hierarchy consistently. */
.calculator-app{font-size:17px;background:var(--krds-color-light-gray-5)}
.calc-header{height:84px;padding-left:max(24px,calc((100% - 1240px)/2));padding-right:max(24px,calc((100% - 1240px)/2))}
.calc-brand{font-size:24px;letter-spacing:-.04em}.calc-nav a{font-size:15px}.header-action{font-size:15px}
.hero{max-width:1240px;padding-top:80px;padding-bottom:72px}.hero-kicker,.section-eyebrow{font-size:13px}.hero h1{font-size:clamp(50px,5.8vw,78px);line-height:1.12;letter-spacing:-.06em}.hero-copy>p{font-size:18px;line-height:1.7}.hero-proof{font-size:14px}
.hero-orbit{min-height:300px;display:grid;grid-template-columns:1fr 1fr;align-content:center;gap:12px;padding:22px;border:1px solid var(--krds-color-light-gray-30);border-radius:var(--krds-radius-large2);background:var(--krds-color-light-gray-0)}.orbit-ring,.orbit-core{display:none}.orbit-card{position:static;min-height:112px;align-content:center;padding:18px;border-radius:var(--krds-radius-large2);background:var(--krds-color-light-gray-5)}.orbit-card strong{font-size:30px}.orbit-card small{font-size:13px}.orbit-card i{font-size:13px}
.top-ad{margin-bottom:30px}.ad-shell p{font-size:14px}.ad-shell a{font-size:14px}
.input-column>h2,.result-topline h2,.compare-heading h2{font-size:32px;line-height:1.35}.section-lead,.compare-heading p{font-size:16px}.task-progress{margin-top:20px}.input-card{padding:24px}.card-heading strong{font-size:18px}.card-heading small{font-size:14px}.brand-select-wrap select{height:56px;font-size:17px}.brand-mini-stats small{font-size:13px}.brand-mini-stats b{font-size:16px}.data-caption{font-size:13px}.money-field>span,.scenario-label{font-size:14px}.money-field input{height:56px;font-size:17px}.cash-check strong{font-size:14px}.cash-check small{font-size:13px}.advanced-toggle{font-size:14px}.scenario-tabs button span{font-size:13px}.scenario-tabs button strong{font-size:15px}
.result-sticky{background:var(--krds-color-light-gray-0);color:var(--krds-color-light-gray-90);border:1px solid var(--krds-color-light-gray-30);border-radius:var(--krds-radius-large2);box-shadow:0 4px 14px rgba(30,33,36,.08)}.result-topline h2{color:var(--krds-color-light-gray-90)}.result-topline .section-eyebrow{color:var(--krds-color-light-primary-60)}.result-explainer{color:var(--krds-color-light-gray-70);font-size:13px}.profit-card{background:var(--krds-color-light-primary-5);border-color:#B9D1FF}.profit-label{color:var(--krds-color-light-gray-70);font-size:14px}.profit-card>strong{color:var(--krds-color-light-primary-60);font-size:48px}.profit-card>p{color:var(--krds-color-light-gray-70);font-size:13px}.profit-bar{background:#D9E6FB}.metric-grid{background:var(--krds-color-light-gray-30);border-color:var(--krds-color-light-gray-30)}.metric{background:var(--krds-color-light-gray-0)}.metric span{color:var(--krds-color-light-gray-70);font-size:13px}.metric strong{color:var(--krds-color-light-gray-90);font-size:20px}.metric small{color:var(--krds-color-light-gray-60);font-size:13px}.result-breakdown{background:var(--krds-color-light-gray-30);border-color:var(--krds-color-light-gray-30)}.result-breakdown div{background:var(--krds-color-light-gray-5)}.result-breakdown span{color:var(--krds-color-light-gray-70);font-size:13px}.result-breakdown b{color:var(--krds-color-light-gray-90);font-size:13px}.result-note{background:var(--krds-color-light-gray-5);color:var(--krds-color-light-gray-70)}.result-note strong{color:var(--krds-color-light-gray-90)}.result-note p{font-size:13px}.risk-box{background:var(--krds-color-light-danger-5);color:var(--krds-color-light-danger-50)}.risk-box strong{color:var(--krds-color-light-gray-90);font-size:13px}.safe-box{background:var(--krds-color-light-success-5);color:var(--krds-color-light-success-50);font-size:13px}.share-link{color:var(--krds-color-light-primary-60);font-size:13px}
.compare-heading h2{font-size:32px}.compare-heading p{font-size:15px}.compare-row{min-height:64px;font-size:13px}.compare-head{font-size:13px}.compare-row button{font-size:13px}.how-copy h2{font-size:46px}.how-copy>p{font-size:15px}.how-step strong{font-size:17px}.how-step p{font-size:14px}.bottom-ad{margin-top:42px}.calc-footer p{font-size:13px}
@media(max-width:620px){.calc-header{height:72px;padding-left:15px;padding-right:15px}.calc-brand{font-size:20px}.header-action{font-size:13px}.hero{padding-top:46px;padding-bottom:34px}.hero h1{font-size:46px}.hero-copy>p{font-size:16px}.hero-orbit{min-height:220px;padding:14px}.orbit-card{min-height:92px;padding:13px}.orbit-card strong{font-size:23px}.orbit-card small{font-size:13px}.orbit-card i{font-size:13px}.input-column>h2,.result-topline h2,.compare-heading h2{font-size:28px}.section-lead,.compare-heading p{font-size:14px}.input-card{padding:18px}.card-heading strong{font-size:16px}.card-heading small{font-size:13px}.brand-select-wrap select,.money-field input{height:52px;font-size:16px}.money-field>span,.scenario-label{font-size:13px}.profit-card>strong{font-size:40px}.metric strong{font-size:18px}.how-copy h2{font-size:38px}}

.directory-page{min-height:100vh;background:var(--krds-color-light-gray-5);color:var(--krds-color-light-gray-90);font-family:var(--krds-font-family-base)}.directory-header{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1200px)/2));background:#fff;border-bottom:1px solid var(--krds-color-light-gray-30)}.directory-brand{font-size:24px;font-weight:700;color:var(--krds-color-light-primary-60)}.directory-home{color:var(--krds-color-light-gray-70);font-size:14px;font-weight:700}.directory-hero{padding:72px max(24px,calc((100% - 1200px)/2)) 54px;background:#fff}.directory-eyebrow{margin:0 0 13px;color:var(--krds-color-light-primary-60);font-size:13px;font-weight:800;letter-spacing:.08em}.directory-hero h1{margin:0;font-size:48px;line-height:1.2;letter-spacing:-.05em}.directory-hero>p:not(.directory-eyebrow){margin:18px 0 28px;color:var(--krds-color-light-gray-70);font-size:18px}.directory-search{display:flex;align-items:flex-end;gap:8px;max-width:720px}.directory-search label{display:grid;gap:7px;flex:1;color:var(--krds-color-light-gray-70);font-size:14px;font-weight:700}.directory-search input{height:56px;padding:0 15px;border:1px solid var(--krds-color-light-gray-60);border-radius:var(--krds-radius-medium2);font-size:17px}.directory-search button{height:56px;padding:0 24px;border:0;border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-primary-50);color:#fff;font-size:16px;font-weight:700}.directory-content{max-width:1200px;margin:0 auto;padding:42px 24px 80px}.directory-notice{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;border:1px solid #b9d1ff;border-radius:var(--krds-radius-large2);background:var(--krds-color-light-primary-5);font-size:14px}.directory-notice strong{color:var(--krds-color-light-primary-70)}.directory-notice span{color:var(--krds-color-light-gray-70)}/* 3열 아니면 1열뿐이라 620~1024px 구간에서 3열이 화면을 뚫고 나갔다(879 > 753).
   폭에 맞춰 알아서 접히게 둔다 — 어느 화면에서든 칸이 260px 밑으로 안 내려간다. */
.directory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:22px}.directory-card{display:grid;gap:9px;min-height:150px;padding:22px;border:1px solid var(--krds-color-light-gray-30);border-radius:var(--krds-radius-large2);background:#fff}.directory-card>span{color:var(--krds-color-light-primary-60);font-size:13px;font-weight:700}.directory-card strong{font-size:22px}.directory-card p{margin:auto 0 0;color:var(--krds-color-light-gray-70);font-size:14px}.directory-card p span{color:var(--krds-color-light-primary-60);font-weight:800}.directory-footer{padding:28px max(24px,calc((100% - 1200px)/2));border-top:1px solid var(--krds-color-light-gray-30);color:var(--krds-color-light-gray-70);font-size:13px}
@media(max-width:620px){.directory-header{padding:0 16px}.directory-brand{font-size:20px}.directory-home{font-size:13px}.directory-hero{padding:48px 18px 34px}.directory-hero h1{font-size:36px}.directory-hero>p:not(.directory-eyebrow){font-size:16px;line-height:1.6}.directory-search{display:grid;grid-template-columns:1fr auto;align-items:end}.directory-search label{grid-column:1/-1}.directory-search input{font-size:16px}.directory-search button{padding:0 18px}.directory-content{padding:28px 16px 55px}.directory-notice{display:grid;gap:7px;padding:15px;font-size:13px}.directory-grid{grid-template-columns:1fr;gap:10px}.directory-card{min-height:125px;padding:18px}.directory-card strong{font-size:20px}}
.directory-notice.live{border-color:var(--krds-color-light-success-50);background:var(--krds-color-light-success-5)}.directory-notice.live strong{color:var(--krds-color-light-success-50)}.directory-notice.stale{border-color:#D9A441;background:#FDF6E7}.directory-notice.stale strong{color:#8A6008}.directory-filter{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:28px}.directory-filter>strong{font-size:18px}.directory-filter>div{display:flex;flex-wrap:wrap;gap:6px}.directory-filter button{height:38px;padding:0 12px;border:1px solid var(--krds-color-light-gray-30);border-radius:var(--krds-radius-medium2);background:#fff;color:var(--krds-color-light-gray-70);font-size:13px;font-weight:700}.directory-filter button.active{border-color:var(--krds-color-light-primary-50);background:var(--krds-color-light-primary-5);color:var(--krds-color-light-primary-60)}.directory-card p{margin:0}.directory-card .directory-card-link{margin-top:auto;color:var(--krds-color-light-primary-60);font-weight:700}.directory-empty{margin-top:22px;padding:52px;text-align:center;border:1px dashed var(--krds-color-light-gray-30);color:var(--krds-color-light-gray-70);font-size:15px}
@media(max-width:620px){.directory-filter{display:block}.directory-filter>strong{display:block;margin-bottom:12px}}

/* Editorial KRDS layer: 정보 우선 화면을 위해 장식성 그라디언트·광택·네온 효과를 제거합니다. */
.radar-start-panel{min-height:0;padding:32px;border:1px solid var(--krds-color-light-primary-50);border-radius:var(--krds-radius-large2);background:var(--krds-color-light-gray-0);color:var(--krds-color-light-gray-90);box-shadow:none;overflow:visible}
.radar-start-panel::after{display:none}
.radar-start-heading .hero-preview-label{color:var(--krds-color-light-primary-60)}
.radar-start-heading h2{font-size:30px;line-height:1.3;letter-spacing:-.04em}
.radar-start-heading h2 span{color:var(--krds-color-light-primary-60)}
.radar-start-heading p{max-width:none;color:var(--krds-color-light-gray-70);font-size:15px;line-height:1.6}
.radar-search-label>span{color:var(--krds-color-light-gray-90);font-size:15px}
.radar-start-panel .brand-combobox-trigger{min-height:56px;border-color:var(--krds-color-light-gray-60);border-radius:var(--krds-radius-medium2);box-shadow:none}
.radar-start-panel .brand-combobox-trigger small{color:var(--krds-color-light-gray-70)}
.radar-start-panel .brand-combobox-trigger svg{color:var(--krds-color-light-gray-70)}
.radar-start-steps{gap:8px;margin-top:20px}
.radar-start-steps>div{padding:14px 12px;border:1px solid var(--krds-color-light-gray-20);border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-gray-5)}
.radar-start-steps b{color:var(--krds-color-light-primary-60);font-size:13px}
.radar-start-steps strong{color:var(--krds-color-light-gray-90);font-size:15px}
.radar-start-steps span{color:var(--krds-color-light-gray-70);font-size:13px}
.radar-start-cta{height:56px;margin-top:20px;border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-primary-50);color:#fff;font-size:16px;box-shadow:none}
.radar-start-cta:hover{transform:none;background:var(--krds-color-light-primary-60);box-shadow:none}
.risk-manifesto{padding:32px 28px 30px;border:1px solid var(--krds-color-light-primary-50);border-radius:var(--krds-radius-large2);background:var(--krds-color-light-gray-0);color:var(--krds-color-light-gray-90);box-shadow:none}
.risk-manifesto-heading .section-eyebrow{color:var(--krds-color-light-primary-60)}
.risk-manifesto-heading h2{font-size:32px;color:var(--krds-color-light-gray-90)}
.risk-manifesto-heading h2 span{color:var(--krds-color-light-primary-60)}
.risk-manifesto-grid article{min-height:180px;padding:20px;border:1px solid var(--krds-color-light-gray-20);border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-gray-5)}
.risk-manifesto-grid article>span{width:30px;height:30px;margin-bottom:18px;border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-primary-5);color:var(--krds-color-light-primary-60);font-size:13px}
.risk-manifesto-grid strong{color:var(--krds-color-light-gray-90);font-size:18px}
.risk-manifesto-grid p{color:var(--krds-color-light-gray-70);font-size:13px}
.trust-screen-callout{border:1px solid #B9D1FF;border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-primary-5)}
.trust-callout-icon{background:#D9E6FB;color:var(--krds-color-light-primary-60)}
.trust-screen-callout strong{color:var(--krds-color-light-gray-90)}
.trust-screen-callout p{color:var(--krds-color-light-gray-70);font-size:13px}
.trust-screen-callout small{color:var(--krds-color-light-gray-60)}
.trust-screen-next{border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-primary-50);color:#fff;font-size:14px}
.trust-screen-next:hover{background:var(--krds-color-light-primary-60)}
.market-insight-section{border-color:var(--krds-color-light-gray-30);border-radius:var(--krds-radius-large2);background:var(--krds-color-light-gray-5);box-shadow:none}
.market-main-signal{background:var(--krds-color-light-primary-60);border-color:var(--krds-color-light-primary-60)}
.market-data-badge{border-radius:var(--krds-radius-medium2)}
.market-loading-lines i{background:var(--krds-color-light-gray-20);background-image:none;animation:none}
@media(max-width:620px){.radar-start-panel{padding:20px 16px}.radar-start-heading h2{font-size:24px}.radar-start-heading p{font-size:14px}.radar-search-label>span{font-size:14px}.radar-start-steps>div{padding:11px 8px}.radar-start-steps strong{font-size:13px}.radar-start-steps span{font-size:13px}.radar-start-cta{height:52px;font-size:15px}.risk-manifesto{padding:22px 15px}.risk-manifesto-heading h2{font-size:26px}.risk-manifesto-grid strong{font-size:16px}.risk-manifesto-grid p{font-size:13px}}

.scenario-chart-section{max-width:1240px;margin:0 auto;padding:42px 24px 70px;background:var(--krds-color-light-gray-5)}
.scenario-chart-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.scenario-chart-heading h2{margin:10px 0 4px;font-size:30px;line-height:1.3;color:var(--krds-color-light-gray-90);letter-spacing:-.04em}.scenario-chart-heading p{margin:0;color:var(--krds-color-light-gray-70);font-size:14px}.chart-legend{display:flex;gap:16px;color:var(--krds-color-light-gray-70);font-size:13px}.chart-legend span{display:flex;align-items:center;gap:6px}.chart-legend i{display:block;width:10px;height:10px;border-radius:2px}.legend-revenue{background:var(--krds-color-light-primary-50)}.legend-profit{background:var(--krds-color-light-success-50)}
.scenario-chart-plot{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:end;height:245px;margin-top:26px;padding:18px 18px 0;border-bottom:1px solid var(--krds-color-light-gray-30);background:linear-gradient(to bottom,transparent 24%,var(--krds-color-light-gray-20) 25%,transparent 26%,transparent 49%,var(--krds-color-light-gray-20) 50%,transparent 51%,transparent 74%,var(--krds-color-light-gray-20) 75%,transparent 76%)}
.scenario-chart-column{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr auto auto;align-items:end;gap:6px;height:100%;padding:0 10px 14px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--krds-color-light-gray-70);cursor:pointer;transition:color .2s ease,border-color .2s ease,transform .2s ease}.scenario-chart-column:hover{color:var(--krds-color-light-primary-60);transform:translateY(-3px)}.scenario-chart-column.active{border-bottom-color:var(--krds-color-light-primary-50);color:var(--krds-color-light-primary-70)}.scenario-chart-bars{display:flex;align-items:end;justify-content:center;gap:8px;grid-column:1/-1;height:100%;min-height:80px}.scenario-chart-bar{display:block;width:min(38px,42%);height:10%;border-radius:4px 4px 0 0;transition:height .55s cubic-bezier(.2,.8,.2,1),opacity .2s;animation:chart-rise .65s ease-out both}.scenario-chart-bar.revenue{background:var(--krds-color-light-primary-50)}.scenario-chart-bar.profit{background:var(--krds-color-light-success-50)}.scenario-chart-bar.loss{background:var(--krds-color-light-danger-50)}.scenario-chart-column strong{grid-column:1/-1;font-size:15px}.scenario-chart-column span{grid-column:1/-1;font-size:13px;color:var(--krds-color-light-gray-70)}.chart-footnote{margin:14px 0 0;color:var(--krds-color-light-gray-60);font-size:13px}@keyframes chart-rise{from{transform:scaleY(0);transform-origin:bottom;opacity:.35}to{transform:scaleY(1);transform-origin:bottom;opacity:1}}
.profit-card>strong,.metric strong{animation:number-pop .4s ease-out}@keyframes number-pop{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:620px){.scenario-chart-section{padding:32px 16px 50px}.scenario-chart-heading{display:block}.scenario-chart-heading h2{font-size:26px}.scenario-chart-heading p{font-size:13px}.chart-legend{margin-top:16px}.scenario-chart-plot{gap:8px;height:205px;padding-left:4px;padding-right:4px}.scenario-chart-column{padding-left:3px;padding-right:3px}.scenario-chart-column strong{font-size:14px}.scenario-chart-column span{font-size:13px}.scenario-chart-bar{gap:5px;width:34%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

.industry-profit-section{max-width:1240px;margin:0 auto;padding:30px 24px 38px;background:var(--krds-color-light-gray-0);border-top:1px solid var(--krds-color-light-gray-30);border-bottom:1px solid var(--krds-color-light-gray-30)}.industry-profit-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.industry-profit-heading h2{margin:8px 0 5px;font-size:30px;line-height:1.3;letter-spacing:-.04em}.industry-profit-heading p{margin:0;color:var(--krds-color-light-gray-70);font-size:14px}.industry-top-callout{display:grid;min-width:174px;padding:15px 18px;border:1px solid #B9D1FF;border-radius:var(--krds-radius-large2);background:var(--krds-color-light-primary-5)}.industry-top-callout span{color:var(--krds-color-light-primary-60);font-size:13px;font-weight:700}.industry-top-callout strong{margin-top:4px;color:var(--krds-color-light-gray-90);font-size:20px}.industry-top-callout b{margin-top:3px;color:var(--krds-color-light-primary-60);font-size:16px}.industry-chart-list{display:grid;gap:13px;margin-top:25px}.industry-chart-row{display:grid;gap:6px}.industry-chart-label{display:flex;align-items:center;justify-content:space-between;gap:16px}.industry-chart-label div{display:flex;align-items:baseline;gap:8px}.industry-chart-label strong{font-size:15px}.industry-chart-label span{color:var(--krds-color-light-gray-60);font-size:13px}.industry-chart-label b{font-size:14px}.industry-chart-label b.positive{color:var(--krds-color-light-success-50)}.industry-chart-label b.negative{color:var(--krds-color-light-danger-50)}.industry-chart-track{height:13px;overflow:hidden;border-radius:99px;background:var(--krds-color-light-gray-5)}.industry-chart-track i{display:block;height:100%;min-width:8px;border-radius:99px;transform-origin:left center;animation:industry-grow .7s cubic-bezier(.2,.8,.2,1) both}.industry-chart-track i.positive{background:var(--krds-color-light-primary-50)}.industry-chart-track i.negative{background:var(--krds-color-light-danger-50)}.industry-chart-row.top .industry-chart-label strong{color:var(--krds-color-light-primary-60)}.industry-chart-row.top .industry-chart-track{height:16px}.industry-chart-note{margin:17px 0 0;color:var(--krds-color-light-gray-60);font-size:13px}@keyframes industry-grow{from{transform:scaleX(0);opacity:.35}to{transform:scaleX(1);opacity:1}}
.input-guide{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:3px 12px;margin:18px 0 4px;padding:14px 16px;border:1px solid #B9D1FF;border-radius:var(--krds-radius-large2);background:var(--krds-color-light-primary-5)}.input-guide strong{color:var(--krds-color-light-primary-70);font-size:13px}.input-guide span{color:var(--krds-color-light-gray-90);font-size:14px;font-weight:700}.input-guide span i{margin:0 5px;color:var(--krds-color-light-primary-60);font-style:normal}.input-guide small{grid-column:2;color:var(--krds-color-light-gray-70);font-size:13px}.advanced-toggle{font-weight:700}.advanced-fields{padding-top:12px}
@media(max-width:620px){.industry-profit-section{padding:26px 16px 32px}.industry-profit-heading{display:block}.industry-profit-heading h2{font-size:25px}.industry-profit-heading p{font-size:13px;line-height:1.5}.industry-top-callout{margin-top:16px}.industry-chart-label div{display:grid;gap:1px}.industry-chart-label strong{font-size:14px}.industry-chart-label span{font-size:13px}.industry-chart-label b{font-size:13px}.input-guide{grid-template-columns:1fr;gap:4px 0}.input-guide small{grid-column:1}.input-guide span{font-size:13px}}
.hero-actions{display:flex;align-items:center;gap:14px;margin-top:26px}.hero-cta{display:inline-flex;align-items:center;gap:8px;height:54px;padding:0 20px;border:0;border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-primary-50);color:#fff;font-size:16px;font-weight:800;cursor:pointer;box-shadow:0 6px 16px rgba(37,110,244,.2);transition:transform .2s ease,box-shadow .2s ease}.hero-cta:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(37,110,244,.25)}.hero-secondary{color:var(--krds-color-light-primary-60);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px}.hero-proof{margin-top:18px}
@media(max-width:620px){.hero-actions{align-items:stretch;flex-direction:column;gap:12px}.hero-cta{justify-content:center;width:100%}.hero-secondary{text-align:center}}
.industry-top-callout small{margin-top:5px;color:var(--krds-color-light-gray-70);font-size:13px}
.hero-orbit{display:block;min-height:0;padding:34px 36px;border:1px solid var(--krds-color-light-gray-30);border-radius:var(--krds-radius-large2);background:var(--krds-color-light-gray-0);box-shadow:0 10px 28px rgba(30,33,36,.08)}.hero-preview-label{color:var(--krds-color-light-primary-60);font-size:13px;font-weight:800;letter-spacing:.04em}.hero-orbit h2{margin:13px 0 26px;color:var(--krds-color-light-gray-90);font-size:32px;line-height:1.35;letter-spacing:-.05em}.hero-orbit h2 span{color:var(--krds-color-light-primary-60)}.hero-preview-flow{display:grid;gap:10px}.hero-preview-flow>div{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:12px 13px;border:1px solid var(--krds-color-light-gray-30);border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-gray-5)}.hero-preview-flow b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--krds-color-light-primary-50);color:#fff;font-size:13px}.hero-preview-flow strong{font-size:14px;color:var(--krds-color-light-gray-90)}.hero-preview-flow span{color:var(--krds-color-light-gray-60);font-size:13px}.hero-preview-result{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding-top:18px;border-top:1px solid var(--krds-color-light-gray-30)}.hero-preview-result span{color:var(--krds-color-light-gray-60);font-size:13px}.hero-preview-result strong{color:var(--krds-color-light-gray-90);font-size:14px}.hero-preview-cta{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;height:48px;margin-top:18px;border:0;border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-primary-50);color:#fff;font-size:15px;font-weight:800;cursor:pointer}.hero-preview-cta:hover{background:var(--krds-color-light-primary-60)}
@media(max-width:620px){.hero-orbit{padding:24px 20px}.hero-orbit h2{font-size:27px}.hero-preview-flow>div{grid-template-columns:30px 1fr;gap:8px}.hero-preview-flow span{grid-column:2}.hero-preview-result{display:grid;gap:3px}}
.brand-search-box{display:flex;align-items:center;gap:10px;margin:14px 0 8px}.brand-search-box input{flex:1;height:48px;padding:0 14px;border:1px solid var(--krds-color-light-gray-60);border-radius:var(--krds-radius-medium2);background:#fff;font-size:15px}.brand-search-box input:focus{border-color:var(--krds-color-light-primary-50);outline:2px solid rgba(37,110,244,.14);outline-offset:1px}.brand-search-box span{flex:none;color:var(--krds-color-light-gray-60);font-size:13px;white-space:nowrap}
@media(max-width:620px){.brand-search-box{display:grid;grid-template-columns:1fr;gap:6px}.brand-search-box span{font-size:13px}}
.brand-seo-page{min-height:100vh;background:var(--krds-color-light-gray-5);color:var(--krds-color-light-gray-90);font-family:var(--krds-font-family-base)}.brand-seo-header{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1180px)/2));border-bottom:1px solid var(--krds-color-light-gray-30);background:#fff}.brand-seo-logo{color:var(--krds-color-light-primary-60);font-size:23px;font-weight:900;letter-spacing:-.06em}.brand-seo-header nav{display:flex;gap:22px}.brand-seo-header nav a{color:var(--krds-color-light-gray-70);font-size:14px;font-weight:700}.brand-seo-breadcrumb{display:flex;align-items:center;gap:5px;max-width:1180px;margin:0 auto;padding:22px 24px 0;color:var(--krds-color-light-gray-60);font-size:13px}.brand-seo-breadcrumb a:hover{color:var(--krds-color-light-primary-60)}.brand-seo-hero{display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:center;gap:70px;max-width:1180px;margin:0 auto;padding:72px 24px 82px}.brand-seo-eyebrow{margin:0 0 13px;color:var(--krds-color-light-primary-60);font-size:13px;font-weight:900;letter-spacing:.04em}.brand-seo-hero h1{margin:0;color:var(--krds-color-light-gray-90);font-size:clamp(42px,5.3vw,68px);line-height:1.12;letter-spacing:-.07em}.brand-seo-hero h1 span{color:var(--krds-color-light-primary-60)}.brand-seo-lead{max-width:680px;margin:24px 0 0;color:var(--krds-color-light-gray-70);font-size:18px;line-height:1.75;word-break:keep-all}.brand-seo-actions{display:flex;align-items:center;gap:15px;margin-top:30px}.brand-seo-primary{display:inline-flex;align-items:center;gap:8px;height:52px;padding:0 18px;border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-primary-50);color:#fff;font-size:15px;font-weight:800;box-shadow:0 7px 18px rgba(37,110,244,.16)}.brand-seo-primary:hover{background:var(--krds-color-light-primary-60)}.brand-seo-secondary{color:var(--krds-color-light-primary-60);font-size:14px;font-weight:800;text-decoration:underline;text-underline-offset:4px}.brand-seo-trust{display:grid;gap:8px;padding:27px;border:1px solid #B9D1FF;border-radius:var(--krds-radius-large2);background:var(--krds-color-light-primary-5)}.brand-seo-trust svg{color:var(--krds-color-light-success-50)}.brand-seo-trust strong{font-size:21px;letter-spacing:-.04em}.brand-seo-trust p{margin:0;color:var(--krds-color-light-gray-70);font-size:14px;line-height:1.6}.brand-seo-trust small{color:var(--krds-color-light-gray-60);font-size:13px}.brand-answer-block{max-width:1180px;margin:0 auto;padding:42px 24px 58px;border-top:1px solid var(--krds-color-light-gray-30);border-bottom:1px solid var(--krds-color-light-gray-30);background:#fff}.brand-answer-block h2,.brand-seo-content h2,.brand-faq h2{margin:0;color:var(--krds-color-light-gray-90);font-size:32px;letter-spacing:-.05em}.brand-answer-block>p:not(.brand-seo-eyebrow){max-width:800px;margin:16px 0 26px;color:var(--krds-color-light-gray-70);font-size:16px;line-height:1.75;word-break:keep-all}.brand-fact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.brand-fact-grid div{display:grid;gap:6px;padding:19px;border:1px solid var(--krds-color-light-gray-30);border-radius:var(--krds-radius-large2);background:var(--krds-color-light-gray-5)}.brand-fact-grid span,.brand-fact-grid small{color:var(--krds-color-light-gray-60);font-size:13px}.brand-fact-grid strong{font-size:18px}.brand-seo-content{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;max-width:1180px;margin:0 auto;padding:62px 24px}.brand-seo-content article,.brand-keyword-panel,.brand-faq{padding:27px;border:1px solid var(--krds-color-light-gray-30);border-radius:var(--krds-radius-large2);background:#fff}.brand-seo-content ol{display:grid;gap:0;margin:25px 0 0;padding:0;list-style:none}.brand-seo-content li{display:grid;grid-template-columns:36px 1fr;gap:10px;padding:17px 0;border-top:1px solid var(--krds-color-light-gray-30)}.brand-seo-content li::before{content:counter(list-item,decimal-leading-zero);display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--krds-color-light-primary-5);color:var(--krds-color-light-primary-60);font-size:13px;font-weight:900}.brand-seo-content li strong{font-size:15px}.brand-seo-content li span{grid-column:2;color:var(--krds-color-light-gray-70);font-size:13px;line-height:1.5}.brand-keyword-panel{background:var(--krds-color-light-primary-5);border-color:#B9D1FF}.brand-keyword-panel h2{font-size:23px}.brand-keyword-panel>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.brand-keyword-panel span{padding:8px 10px;border:1px solid #B9D1FF;border-radius:99px;background:#fff;color:var(--krds-color-light-primary-70);font-size:13px;font-weight:700}/* 다 읽은 사람에게 내미는 자리. 맨 위 버튼을 여기로 내렸다. */
.brand-next{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px;max-width:1132px;margin:0 auto 34px;padding:30px;border:1px solid #B9D1FF;border-radius:var(--krds-radius-large2,16px);background:var(--krds-color-light-primary-5,#f2f6ff)}
.brand-next h2{margin:6px 0 8px;font-size:24px;letter-spacing:-.04em;word-break:keep-all}
.brand-next p{margin:0;max-width:60ch;color:var(--krds-color-light-gray-70,#5c6169);font-size:14.5px;line-height:1.7;word-break:keep-all}
.brand-next .brand-seo-primary{flex:0 0 auto}
@media (max-width:720px){.brand-next{padding:22px}.brand-next h2{font-size:20px}}
.brand-faq{max-width:1132px;margin:0 auto 60px}.brand-faq h2{margin-bottom:22px}.brand-faq details{border-top:1px solid var(--krds-color-light-gray-30)}.brand-faq summary{padding:18px 2px;color:var(--krds-color-light-gray-90);font-size:15px;font-weight:800;cursor:pointer}.brand-faq details p{margin:0 0 18px;color:var(--krds-color-light-gray-70);font-size:14px;line-height:1.6}.brand-seo-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px max(24px,calc((100% - 1180px)/2));border-top:1px solid var(--krds-color-light-gray-30);background:#fff;color:var(--krds-color-light-gray-60);font-size:13px}.brand-seo-footer a{display:inline-flex;align-items:center;gap:6px;color:var(--krds-color-light-primary-60);font-weight:800}
/* 로고와 첫 메뉴 사이가 0px 이라 붙어 보였다. 좁은 화면에서는 메뉴를 옆으로 밀어 본다. */
@media(max-width:760px){.brand-seo-header{height:68px;padding:0 16px;gap:16px}.brand-seo-logo{font-size:20px;flex:none}.brand-seo-header nav{gap:14px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.brand-seo-header nav::-webkit-scrollbar{display:none}.brand-seo-header nav a{font-size:13px;white-space:nowrap}.brand-seo-breadcrumb{padding:18px 16px 0}.brand-seo-hero{display:block;padding:48px 16px 54px}.brand-seo-hero h1{font-size:44px}.brand-seo-lead{font-size:15px;line-height:1.65}.brand-seo-actions{display:grid;gap:13px}.brand-seo-primary{justify-content:center}.brand-seo-secondary{text-align:center}.brand-seo-trust{margin-top:28px;padding:20px}.brand-answer-block{padding:34px 16px 42px}.brand-answer-block h2,.brand-seo-content h2,.brand-faq h2{font-size:26px}.brand-answer-block>p:not(.brand-seo-eyebrow){font-size:14px}.brand-fact-grid{grid-template-columns:1fr}.brand-seo-content{display:block;padding:38px 16px}.brand-seo-content article{padding:21px}.brand-keyword-panel{margin-top:14px;padding:21px}.brand-faq{margin:0 16px 40px;padding:21px}.brand-seo-footer{display:grid;padding:22px 16px}}
.industry-profit-section{padding-top:34px;padding-bottom:42px}.industry-profit-heading h2{font-size:34px}.industry-profit-heading p{max-width:660px;font-size:15px;line-height:1.6}.industry-chart-list{gap:16px;margin-top:28px}.industry-chart-row{padding:18px 20px;border:1px solid var(--krds-color-light-gray-30);border-radius:var(--krds-radius-large2);background:#fff;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.industry-chart-row:hover{border-color:#9bbdff;box-shadow:0 8px 20px rgba(30,33,36,.07);transform:translateY(-2px)}.industry-chart-row.top{border-color:#9bbdff;background:var(--krds-color-light-primary-5)}.industry-chart-label{align-items:center}.industry-chart-name{display:flex;align-items:center;gap:10px}.industry-rank{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--krds-color-light-gray-20);color:var(--krds-color-light-gray-70);font-size:13px;font-weight:800}.industry-chart-row.top .industry-rank{background:var(--krds-color-light-primary-50);color:#fff}.industry-chart-track{height:10px;margin-top:12px}.industry-view-button{display:inline-flex;align-items:center;gap:4px;margin-top:13px;padding:0;border:0;background:transparent;color:var(--krds-color-light-primary-60);font-size:13px;font-weight:800;cursor:pointer}.industry-view-button:hover{text-decoration:underline;text-underline-offset:3px}
@media(max-width:620px){.industry-profit-heading h2{font-size:27px}.industry-chart-row{padding:16px}.industry-chart-label{align-items:flex-start}.industry-chart-label>b{font-size:13px}.industry-chart-name{align-items:flex-start}.industry-rank{flex:none}.industry-chart-label div div{display:grid;gap:2px}.industry-chart-label strong{font-size:15px}}
.decision-summary{display:grid;gap:5px;margin:16px 0;padding:16px;border-left:4px solid var(--krds-color-light-primary-50);border-radius:0 var(--krds-radius-medium2) var(--krds-radius-medium2) 0;background:var(--krds-color-light-primary-5)}.decision-summary strong{color:var(--krds-color-light-gray-90);font-size:16px}.decision-summary span{color:var(--krds-color-light-gray-70);font-size:13px;line-height:1.5}.partner-lead-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:54px;margin-top:14px;border:0;border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-success-50);color:#fff;font-size:16px;font-weight:800;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.partner-lead-button:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(25,135,84,.2)}.lead-form-card{margin-top:18px;padding:20px;border:1px solid #B9D1FF;border-radius:var(--krds-radius-large2);background:var(--krds-color-light-primary-5)}.lead-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.lead-form-heading h3{margin:8px 0 5px;font-size:21px;letter-spacing:-.04em}.lead-form-heading p{margin:0;color:var(--krds-color-light-gray-70);font-size:13px;line-height:1.5}.lead-close{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--krds-color-light-gray-30);border-radius:50%;background:#fff;color:var(--krds-color-light-gray-70);cursor:pointer}.lead-context{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0;padding:13px;border-radius:var(--krds-radius-medium2);background:#fff}.lead-context span{color:var(--krds-color-light-gray-60);font-size:13px}.lead-context strong{color:var(--krds-color-light-gray-90);font-size:13px}.lead-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.lead-fields label{display:grid;gap:6px;color:var(--krds-color-light-gray-70);font-size:13px;font-weight:700}.lead-fields input,.lead-fields select{width:100%;height:46px;padding:0 12px;border:1px solid var(--krds-color-light-gray-50);border-radius:var(--krds-radius-medium2);background:#fff;color:var(--krds-color-light-gray-90);font-size:14px}.lead-fields input:focus,.lead-fields select:focus{border-color:var(--krds-color-light-primary-50);outline:2px solid rgba(37,110,244,.12);outline-offset:1px}.lead-agree{display:flex;align-items:flex-start;gap:8px;margin:14px 0;color:var(--krds-color-light-gray-70);font-size:13px;line-height:1.5}.lead-agree input{margin-top:2px;accent-color:var(--krds-color-light-primary-50)}.lead-submit{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;height:48px;border:0;border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-primary-50);color:#fff;font-size:14px;font-weight:800;cursor:pointer}.lead-submit:disabled{cursor:wait;opacity:.6}.lead-error{margin:0 0 12px;color:var(--krds-color-light-danger-50);font-size:13px;font-weight:700}.lead-success{display:flex;align-items:flex-start;gap:10px;padding:16px;border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-success-5);color:var(--krds-color-light-success-50)}.lead-success strong{display:block;color:var(--krds-color-light-gray-90);font-size:14px}.lead-success p{margin:4px 0 0;color:var(--krds-color-light-gray-70);font-size:13px;line-height:1.5}
@media(max-width:620px){.decision-summary strong{font-size:15px}.lead-form-card{padding:16px}.lead-form-heading h3{font-size:19px}.lead-fields{grid-template-columns:1fr;gap:10px}.lead-context{gap:6px}.lead-fields input,.lead-fields select{height:50px}}
.brand-combobox{position:relative;margin:14px 0 8px;z-index:5}.brand-combobox-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:64px;padding:12px 16px;border:1px solid var(--krds-color-light-gray-60);border-radius:var(--krds-radius-medium2);background:#fff;color:var(--krds-color-light-gray-90);text-align:left;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease}.brand-combobox-trigger:hover,.brand-combobox.is-open .brand-combobox-trigger{border-color:var(--krds-color-light-primary-50);box-shadow:0 0 0 3px rgba(37,110,244,.12)}.brand-combobox-trigger>span{display:grid;gap:3px;min-width:0}.brand-combobox-trigger strong{overflow:hidden;color:var(--krds-color-light-gray-90);font-size:17px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.brand-combobox-trigger small{color:var(--krds-color-light-gray-60);font-size:13px}.brand-combobox-trigger svg{flex:none;color:var(--krds-color-light-gray-60);transition:transform .2s ease}.brand-combobox.is-open .brand-combobox-trigger svg{transform:rotate(180deg);color:var(--krds-color-light-primary-60)}.brand-combobox-panel{position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:hidden;border:1px solid var(--krds-color-light-gray-40);border-radius:var(--krds-radius-medium2);background:#fff;box-shadow:0 14px 34px rgba(30,33,36,.16);animation:brand-dropdown-in .16s ease-out}.brand-combobox-search{display:flex;align-items:center;gap:8px;padding:10px;border-bottom:1px solid var(--krds-color-light-gray-20);background:var(--krds-color-light-gray-5)}.brand-combobox-search input{min-width:0;flex:1;height:44px;padding:0 12px;border:1px solid var(--krds-color-light-gray-50);border-radius:var(--krds-radius-medium2);background:#fff;color:var(--krds-color-light-gray-90);font-size:15px}.brand-combobox-search input:focus{border-color:var(--krds-color-light-primary-50);outline:2px solid rgba(37,110,244,.14);outline-offset:1px}.brand-combobox-search>button{display:grid;place-items:center;width:30px;height:30px;margin-left:-43px;border:0;border-radius:50%;background:transparent;color:var(--krds-color-light-gray-60);cursor:pointer}.brand-combobox-search>button:hover{background:var(--krds-color-light-gray-10);color:var(--krds-color-light-gray-90)}.brand-combobox-search>span{flex:none;color:var(--krds-color-light-gray-60);font-size:13px;white-space:nowrap}.brand-combobox-options{max-height:300px;overflow-y:auto;padding:6px}.brand-combobox-options>button{display:grid;grid-template-columns:1fr auto;align-items:center;width:100%;gap:10px;padding:12px 12px;border:0;border-radius:var(--krds-radius-medium2);background:#fff;color:var(--krds-color-light-gray-90);text-align:left;cursor:pointer}.brand-combobox-options>button:hover,.brand-combobox-options>button.selected{background:var(--krds-color-light-primary-5);color:var(--krds-color-light-primary-70)}.brand-combobox-options>button>span{overflow:hidden;font-size:14px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.brand-combobox-options>button>small{color:var(--krds-color-light-gray-60);font-size:13px;white-space:nowrap}.brand-combobox-options>button.selected>small{color:var(--krds-color-light-primary-60)}.brand-combobox-empty{padding:26px 15px;text-align:center;color:var(--krds-color-light-gray-70);font-size:14px;line-height:1.6}.brand-combobox-empty small{color:var(--krds-color-light-gray-60);font-size:13px}.brand-combobox-hint{margin:0;padding:9px 14px;border-top:1px solid var(--krds-color-light-gray-20);color:var(--krds-color-light-gray-60);font-size:13px;background:#fff}@keyframes brand-dropdown-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:620px){.brand-combobox-trigger{min-height:58px;padding:10px 13px}.brand-combobox-trigger strong{font-size:16px}.brand-combobox-panel{max-height:calc(100vh - 180px)}.brand-combobox-options{max-height:calc(100vh - 280px)}.brand-combobox-search{display:grid;grid-template-columns:1fr auto;gap:7px}.brand-combobox-search input{grid-column:1/-1}.brand-combobox-search>button{position:absolute;top:55px;right:51px}.brand-combobox-search>span{grid-column:1/-1}}
.brand-identity{display:inline-flex;align-items:center;gap:10px;min-width:0}.franchise-mark{position:relative;display:grid;grid-template-columns:repeat(3,5px);align-items:end;gap:3px;width:36px;height:36px;padding:9px 8px 8px;border:1px solid rgba(255,255,255,.14);border-radius:11px;background:linear-gradient(145deg,#1d477c,#256ef4);box-shadow:0 6px 16px rgba(37,110,244,.26)}.franchise-mark i{display:block;width:5px;border-radius:3px 3px 1px 1px;background:#fff}.franchise-mark i:nth-child(1){height:8px;opacity:.72}.franchise-mark i:nth-child(2){height:13px;opacity:.88}.franchise-mark i:nth-child(3){height:18px}.franchise-mark b{position:absolute;top:6px;right:6px;width:4px;height:4px;border-radius:50%;background:#c5ff4a;box-shadow:0 0 0 3px rgba(197,255,74,.18)}.brand-wordmark{display:grid;gap:2px;min-width:0}.brand-wordmark strong{color:#fff;font-size:21px;font-weight:950;letter-spacing:-.07em;line-height:1}.brand-wordmark small{color:#9db0c4;font-size:7px;font-weight:900;letter-spacing:.15em;line-height:1;white-space:nowrap}.calc-footer .brand-identity{gap:8px}.calc-footer .franchise-mark{width:30px;height:30px;padding:7px 6px 6px;border-radius:9px}.calc-footer .franchise-mark i{width:4px}.calc-footer .franchise-mark i:nth-child(1){height:7px}.calc-footer .franchise-mark i:nth-child(2){height:11px}.calc-footer .franchise-mark i:nth-child(3){height:15px}.calc-footer .franchise-mark b{top:5px;right:5px}.calc-footer .brand-wordmark strong{color:var(--ink);font-size:16px}.calc-footer .brand-wordmark small{color:#80918d;font-size:6px}.calc-footer .calc-brand{font-size:inherit}.calc-header .calc-brand{gap:0}.calc-header .calc-brand:hover .franchise-mark{transform:translateY(-1px);box-shadow:0 9px 20px rgba(37,110,244,.34)}.franchise-mark{transition:transform .2s ease,box-shadow .2s ease}
@media(max-width:620px){.brand-identity{gap:8px}.franchise-mark{width:32px;height:32px;padding:8px 7px 7px;border-radius:10px}.franchise-mark i{width:4px}.franchise-mark i:nth-child(1){height:7px}.franchise-mark i:nth-child(2){height:11px}.franchise-mark i:nth-child(3){height:16px}.brand-wordmark strong{font-size:18px}.brand-wordmark small{font-size:6px}.calc-footer .brand-wordmark strong{font-size:15px}}
.brand-identity-light .brand-wordmark strong{color:#12233d}.brand-identity-light .brand-wordmark small{color:#72839a}.brand-identity-light .franchise-mark{box-shadow:0 6px 16px rgba(37,110,244,.18)}.directory-brand,.brand-seo-logo{display:inline-flex;align-items:center}.directory-brand .brand-wordmark strong,.brand-seo-logo .brand-wordmark strong{font-size:18px}.directory-brand .brand-wordmark small,.brand-seo-logo .brand-wordmark small{font-size:6px}.directory-brand .franchise-mark,.brand-seo-logo .franchise-mark{width:32px;height:32px;padding:8px 7px 7px;border-radius:10px}.directory-brand .franchise-mark i,.brand-seo-logo .franchise-mark i{width:4px}.directory-brand .franchise-mark i:nth-child(1),.brand-seo-logo .franchise-mark i:nth-child(1){height:7px}.directory-brand .franchise-mark i:nth-child(2),.brand-seo-logo .franchise-mark i:nth-child(2){height:11px}.directory-brand .franchise-mark i:nth-child(3),.brand-seo-logo .franchise-mark i:nth-child(3){height:16px}
.brand-identity .brand-wordmark strong{font-size:18px}.brand-identity .brand-wordmark small{font-size:6px}

/* 50+ 사용자용 KRDS 최종 기준: 본문 18px, 입력 56px, 보조문구 14px 이상 */
body{font-size:18px;line-height:1.65;word-break:keep-all;overflow-x:clip}
/* ★ 동의 체크박스를 라벨에 직접 그린다.
   Tailwind preflight 가 *, ::before, … 에 border:0 · padding:0 을 거는데
   네이티브 체크박스는 그 테두리에서 제 크기가 나온다. 그래서 화면에서 사라졌다 —
   글자는 보이는데 네모만 없었다. 상담 신청 폼과 리포트 결제 폼이 둘 다 그 상태였고,
   동의를 못 하니 결제가 아예 막혀 있었다. 오류는 한 줄도 안 났다.

   네이티브 크기를 돌려주는 것으로는 못 미덥다 — 리셋을 하나 더 얹으면 또 사라진다.
   이 사이트가 이미 라디오에 쓰는 방식(.sf-how)대로, 네모는 우리가 그리고
   진짜 입력칸은 숨긴다. 어떤 리셋도 ::before 로 그린 상자를 못 찌그러뜨린다.
   숨기되 지우지는 않는다 — 키보드와 스크린리더에는 그대로 있어야 한다. */
/* 누르는 줄은 손끝만큼 두꺼워야 한다. 글자 높이 그대로 두면 19px 라 잘 안 맞는다. */
.od-agree,.lead-agree{position:relative;cursor:pointer;padding:4px 0;min-height:26px}
.od-agree>input[type="checkbox"],.lead-agree>input[type="checkbox"]{
  position:absolute;width:1px;height:1px;opacity:0;margin:0;
}
.od-agree>span,.lead-agree>span{position:relative;padding-left:27px;display:block}
.od-agree>span::before,.lead-agree>span::before{
  content:'';position:absolute;left:0;top:1px;width:19px;height:19px;
  border:2px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:5px;background:#fff;
}
.od-agree:has(input:checked)>span::before,.lead-agree:has(input:checked)>span::before{
  border-color:var(--krds-color-light-primary-50,#256ef4);
  background:var(--krds-color-light-primary-50,#256ef4);
}
/* 체크 표시는 테두리 두 변으로 그린다. 글꼴에 기대면 기기마다 모양이 다르다. */
.od-agree:has(input:checked)>span::after,.lead-agree:has(input:checked)>span::after{
  content:'';position:absolute;left:6px;top:5px;width:5px;height:10px;
  border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg);
}
.od-agree:has(input:focus-visible)>span::before,.lead-agree:has(input:focus-visible)>span::before{
  outline:2px solid var(--krds-color-light-primary-50,#256ef4);outline-offset:2px;
}
.calculator-app{font-family:var(--krds-font-family-base);font-size:18px;line-height:1.65;color:var(--krds-color-light-gray-90)}
.calculator-app p{line-height:1.65}
.hero-kicker,.section-eyebrow{font-size:15px;letter-spacing:0}
.hero-copy>p{font-size:20px;line-height:1.8}
.hero-proof{font-size:15px;line-height:1.6}
.hero-cta,.hero-preview-cta{height:58px;font-size:17px}
.input-guide{padding:18px 20px}
.input-guide strong{font-size:15px}
.input-guide span{font-size:16px;line-height:1.6}
.input-guide small{font-size:14px;line-height:1.6}
.card-heading strong{font-size:19px}
.card-heading small{font-size:14px}
.brand-mini-stats small{font-size:14px}
.brand-mini-stats b{font-size:17px}
.data-caption{font-size:14px;line-height:1.6}
.money-field>span,.scenario-label{font-size:15px}
.money-field small{font-size:14px}
.money-field input{height:56px;font-size:18px}
.advanced-toggle{font-size:15px}
.scenario-tabs button span{font-size:14px}
.scenario-tabs button strong{font-size:16px}
.radar-start-panel{padding:36px 32px;border-width:2px;animation:none}
.radar-start-heading h2{font-size:34px;line-height:1.3}
.radar-start-heading p{font-size:16px;line-height:1.7}
.radar-search-label{gap:10px}
.radar-search-label>span{font-size:17px}
.radar-start-panel .brand-combobox-trigger{min-height:74px;padding:15px 18px}
.radar-start-panel .brand-combobox-trigger strong{font-size:20px}
.radar-start-panel .brand-combobox-trigger small{font-size:15px}
.brand-combobox-trigger{min-height:68px}
.brand-combobox-trigger strong{font-size:19px}
.brand-combobox-trigger small{font-size:14px}
.brand-combobox-search{padding:12px}
.brand-combobox-search input{height:56px;font-size:18px}
.brand-combobox-search>span{font-size:14px}
.brand-combobox-options>button{min-height:56px;padding:15px 16px}
.brand-combobox-options>button>span{font-size:17px}
.brand-combobox-options>button>small{font-size:14px}
.brand-combobox-hint{padding:12px 16px;font-size:14px}
.brand-combobox-status{display:flex;min-height:190px;flex-direction:column;align-items:center;justify-content:center;gap:9px;padding:28px 20px;text-align:center;color:var(--krds-color-light-gray-80)}
.brand-combobox-status>i{width:30px;height:30px;border:3px solid var(--krds-color-light-primary-10);border-top-color:var(--krds-color-light-primary-60);border-radius:50%;animation:brand-catalog-spin .75s linear infinite}
.brand-combobox-status>strong{font-size:19px;line-height:1.45}
.brand-combobox-status>span{max-width:360px;color:var(--krds-color-light-gray-70);font-size:16px;line-height:1.55}
.brand-combobox-status.is-error{background:var(--krds-color-light-danger-5,#fff5f5)}
.brand-combobox-status.is-error>strong{color:var(--krds-color-light-danger-60,#d50136)}
.brand-combobox-status>button{min-width:150px;min-height:48px;margin-top:5px;padding:10px 18px;border:1px solid var(--krds-color-light-primary-60);border-radius:var(--krds-radius-medium2);background:#fff;color:var(--krds-color-light-primary-70);font-size:16px;font-weight:700;cursor:pointer}
.brand-combobox-search input:disabled{background:var(--krds-color-light-gray-10);color:var(--krds-color-light-gray-60);cursor:wait}
@keyframes brand-catalog-spin{to{transform:rotate(360deg)}}
.radar-start-panel .brand-combobox-trigger{animation:none}
.radar-start-steps{gap:10px}
.radar-start-steps>div{padding:16px 14px}
.radar-start-steps b{font-size:13px}
.radar-start-steps strong{font-size:16px}
.radar-start-steps span{font-size:14px}
.radar-start-cta{height:60px;font-size:17px}
.risk-dashboard{padding:36px 32px 24px}
.risk-dashboard-head h2{font-size:42px;line-height:1.2}
.risk-dashboard-head p{font-size:17px;line-height:1.7}
.risk-dashboard-region{min-width:280px;padding:20px}
.risk-dashboard-region label{font-size:16px}
.risk-dashboard-region select{height:56px;font-size:18px}
.risk-dashboard-region small{font-size:14px;line-height:1.5}
.risk-verdict{padding:22px 24px}
.risk-verdict-label{font-size:15px}
.risk-verdict strong{font-size:28px}
.risk-verdict p{font-size:16px;line-height:1.6}
.risk-verdict-mark{width:80px;height:80px;font-size:17px}
.risk-signal{min-height:205px;padding:22px}
.risk-signal-top>span{font-size:14px}
.risk-signal h3{font-size:17px}
.risk-signal strong{font-size:28px}
.risk-signal p{min-height:48px;font-size:15px;line-height:1.65}
.risk-dashboard-foot{font-size:15px;line-height:1.6}
.market-select-field span{font-size:15px}
.market-select-field select{height:56px;font-size:18px}
.selected-region-hint{font-size:14px;line-height:1.5}
.secondary-tool>summary{min-height:68px;padding:20px 24px}
.secondary-tool>summary>span{font-size:18px}
.secondary-tool>summary small{font-size:14px}
.how-copy>p{font-size:16px}
.how-step strong{font-size:19px}
.how-step p{font-size:15px}

@media(max-width:860px){
  .risk-dashboard-head{display:block}
  .risk-dashboard-region{min-width:0;margin-top:22px}
  .risk-signal-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  body{font-size:17px}
  .calculator-app{font-size:17px}
  .calc-header{height:76px;padding-left:14px;padding-right:14px}
  .calc-brand{font-size:21px}
  .header-action{height:48px;font-size:14px}
  .hero{padding:40px 14px 30px}
  .hero h1{font-size:clamp(40px,11vw,56px);line-height:1.15}
  .hero-copy>p{font-size:18px;line-height:1.75}
  .hero-proof{font-size:14px}
  .hero-cta,.hero-preview-cta{height:58px;font-size:17px}
  .radar-start-panel{padding:24px 18px;border-width:2px}
  .radar-start-heading h2{font-size:30px}
  .radar-start-heading p{font-size:15px}
  .radar-search-label>span{font-size:16px}
  .radar-start-panel .brand-combobox-trigger{min-height:76px}
  .radar-start-panel .brand-combobox-trigger strong{font-size:20px}
  .radar-start-panel .brand-combobox-trigger small{font-size:15px}
  .brand-combobox-search input{height:56px;font-size:18px}
  .brand-combobox-search>span{font-size:14px}
  .brand-combobox-options>button{min-height:60px;padding:16px}
  .brand-combobox-options>button>span{font-size:18px}
  .brand-combobox-options>button>small{font-size:14px}
  .radar-start-steps{grid-template-columns:1fr;gap:8px}
  .radar-start-steps>div{display:flex;align-items:center;gap:11px;padding:15px}
  .radar-start-steps strong{font-size:17px}
  .radar-start-steps span{font-size:14px}
  .radar-start-cta{height:60px;font-size:17px}
  .risk-dashboard{margin:0 12px 24px;padding:24px 18px 18px}
  .risk-dashboard-head h2{font-size:32px}
  .risk-dashboard-head p{font-size:15px}
  .risk-dashboard-region{padding:18px}
  .risk-dashboard-region label{font-size:16px}
  .risk-dashboard-region select{height:58px;font-size:18px}
  .risk-dashboard-region small{font-size:14px}
  .risk-verdict{padding:20px;gap:12px}
  .risk-verdict strong{font-size:23px}
  .risk-verdict p{font-size:14px}
  .risk-verdict-mark{width:66px;height:66px;font-size:15px}
  .risk-signal-grid{grid-template-columns:1fr;gap:10px}
  .risk-signal{min-height:0;padding:20px}
  .risk-signal h3{font-size:17px}
  .risk-signal strong{font-size:27px}
  .risk-signal p{min-height:0;font-size:15px}
  .risk-dashboard-foot{font-size:14px}
  .secondary-tool>summary{min-height:68px;padding:19px 16px}
  .secondary-tool>summary>span{font-size:17px}
  .secondary-tool>summary small{font-size:14px}
  .input-card{padding:20px 18px}
  .data-caption{font-size:14px}
  .money-field>span,.scenario-label{font-size:15px}
  .money-field input{height:58px;font-size:18px}
  .how-copy>p{font-size:16px}
  .how-step strong{font-size:19px}
  .how-step p{font-size:15px}
}
@media(prefers-reduced-motion:reduce){
  .radar-start-panel,.radar-start-panel .brand-combobox-trigger{animation:none!important}
}

/* 계약 전 확인이 첫 행동이 되도록, 기존 2단 영웅 영역을 단일 검색 화면으로 정리 */
.verification-hero{display:block;max-width:1120px;padding:72px 24px 62px}
.verification-copy{max-width:840px;margin:0 auto;padding-top:0;text-align:center}
.verification-copy .hero-kicker,.verification-copy .verification-proof{justify-content:center}
.verification-copy h1{margin:18px 0 20px;font-size:clamp(44px,5.7vw,72px);line-height:1.16}
.verification-copy>p{max-width:700px;margin:0 auto;font-size:19px;line-height:1.7}
.verification-search-card{max-width:760px;margin:34px auto 0;padding:34px;text-align:left;background:#fff}
.verification-search-card .radar-start-heading h2{font-size:30px;line-height:1.35}
.verification-search-card .radar-start-heading p{font-size:17px;line-height:1.65}
.verification-search-card .radar-search-label>span{font-size:17px}
.verification-proof{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:22px;color:var(--krds-color-light-gray-70);font-size:15px;font-weight:700}
.verification-proof span{display:inline-flex;align-items:center;gap:5px}.verification-proof svg{color:var(--krds-color-light-success-50)}
.verification-directory-link{display:inline-flex;align-items:center;gap:6px;margin-top:22px;color:var(--krds-color-light-primary-60);font-size:16px;font-weight:800;text-decoration:underline;text-underline-offset:4px}
.selected-brand-ready{display:flex;align-items:center;gap:9px;margin-top:18px;padding:15px 17px;border:1px solid var(--krds-color-light-success-30);border-radius:var(--krds-radius-medium2);background:var(--krds-color-light-success-5);color:var(--krds-color-light-gray-90);font-size:16px;line-height:1.55}.selected-brand-ready svg{flex:none;color:var(--krds-color-light-success-50)}
/* 주소로 온 브랜드를 못 찾았을 때. 초록 '열었습니다' 와 헷갈리지 않게 주황으로(2026-10-03). */
.selected-brand-missing{margin-top:18px;padding:14px 16px;border:1px solid #f0c27a;border-radius:var(--krds-radius-medium2,6px);background:var(--krds-color-light-warning-5,#fff3db);color:#5c3d00;font-size:15px;line-height:1.6}
.before-search-guide{max-width:1120px;margin:0 auto 58px;padding:28px 32px;border:1px solid var(--krds-color-light-gray-30);border-radius:var(--krds-radius-large2);background:#fff}.before-search-guide h2{margin:0;font-size:28px;letter-spacing:-.04em}.before-search-guide p{margin:12px 0 0;color:var(--krds-color-light-gray-70);font-size:17px;line-height:1.65}
.data-source-summary{display:flex;flex-wrap:wrap;gap:9px;margin:18px 0 0}.data-source-summary span{padding:8px 11px;border:1px solid var(--krds-color-light-gray-30);border-radius:var(--krds-radius-medium2);background:#fff;color:var(--krds-color-light-gray-70);font-size:14px;font-weight:700}.data-source-summary b{color:var(--krds-color-light-gray-90)}
.directory-search-help{margin:10px 0 0;color:var(--krds-color-light-gray-70);font-size:15px;line-height:1.55}.directory-notice button{min-height:44px;padding:0 14px;border:1px solid var(--krds-color-light-primary-50);border-radius:var(--krds-radius-medium2);background:#fff;color:var(--krds-color-light-primary-60);font-size:15px;font-weight:800}
@media(max-width:620px){.verification-hero{padding:42px 14px 38px}.verification-copy h1{font-size:clamp(39px,11vw,54px);line-height:1.18}.verification-copy>p{font-size:18px}.verification-search-card{margin-top:26px;padding:24px 18px}.verification-search-card .radar-start-heading h2{font-size:29px}.verification-search-card .radar-start-heading p{font-size:16px}.verification-proof{justify-content:flex-start;gap:9px;font-size:14px;text-align:left}.verification-directory-link{font-size:16px}.before-search-guide{margin:0 14px 34px;padding:24px 18px}.before-search-guide h2{font-size:26px}.before-search-guide p{font-size:16px}.data-source-summary{gap:7px}.data-source-summary span{font-size:13px}.directory-search-help{font-size:14px}}

/* 모바일·인쇄 보정 */
@media(max-width:720px){
}
@media print{
  /* 리포트는 '결제일로부터 3개월' 만 열린다(이용약관 8조). 그래서 인쇄·PDF 저장이 보관 수단이다.
     화면 장식이 아니라 종이에서 읽히는 것이 기준이다 — 머리글·바닥글·결제 상자·버튼은 지우고,
     절과 칸이 장 넘김에 잘리지 않게 붙들고, 막대·띠는 배경색을 강제로 찍는다(기본값은 배경을 안 찍는다). */
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .site-header,.site-footer,.brand-seo-breadcrumb,.rp-ask-link,.rp-help,.rp-buy,.rp-paid,.rp-print,.next-step-location{display:none!important}
  /* 리포트를 감싼 main.brand-seo-page 의 회색 바탕이 위 print-color-adjust:exact 때문에 모든 쪽에 찍혔다(2026-10-02). 종이는 흰 바탕. */
  body,main.brand-seo-page{background:#fff!important}
  /* 제목 뒤 한 줄(건물 이름 등)과 다음 칸 사이에서 쪽이 넘어가 제목만 쪽 끝에 남았다('이 건물에서 3년간 …'). 제목 바로 뒤 요소도 붙든다. */
  .rp-section>h2+*{break-after:avoid;page-break-after:avoid}
  .rp{max-width:none;padding:0;font-size:11pt}
  .rp-head{padding:0 0 12px}
  .rp-head h1{font-size:20pt}
  .rp-section{padding:14px 0;break-inside:auto;page-break-inside:auto}
  .rp-section h2{break-after:avoid;page-break-after:avoid;font-size:14pt}
  .rp-stats,.rp-mkt-cards,.rp-table-wrap,.rp-say,.rp-trend,.rp-floors,.rp-bars,.rp-near,.rp-scalewrap{
    break-inside:avoid;page-break-inside:avoid}
  .rp-table-wrap{overflow:visible}
  table{width:100%}
  tr,li{break-inside:avoid;page-break-inside:avoid}
  thead{display:table-header-group}
  .rp-foot{break-before:auto;page-break-before:auto}
  a[href]{text-decoration:none;color:inherit}
  /* 화면에서 칸을 잡아 주던 막대가 종이에서는 안 찍혀 글자만 흩어진다. 목록은 한 줄로 되돌린다. */
  .rp-near li{display:flex;gap:12px;align-items:baseline;padding:5px 0;border-bottom:1px solid #e5e8ec}
  .rp-near-bar{display:none}
  .rp-gone li{grid-template-columns:auto 1fr auto;gap:10px;padding:5px 0}
  .rp-gone ul.is-no-quarter li{grid-template-columns:1fr auto}
}

/* 브랜드 SEO 페이지의 가맹본부 표시 */
.brand-seo-company{display:inline-flex;align-items:center;gap:7px;margin:0 0 14px;padding:9px 14px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:999px;background:var(--krds-color-light-gray-0,#fff);color:var(--krds-color-light-gray-80,#33363d);font-size:15px;line-height:1.4}
.brand-seo-company strong{color:var(--krds-color-light-gray-90,#1e2124)}
.brand-seo-company span{color:var(--krds-color-light-gray-70,#55595c)}
/* 휴대폰에서는 줄 흐름으로. inline-flex 면 '공정위 등록 가맹본부'·법인명·연도가 세 칸으로 갈려 '(주)' 만 한 줄에 남았다(2026-10-03 320px, 긴 브랜드). */
@media(max-width:620px){.brand-seo-company{display:block;font-size:14px;padding:8px 12px;border-radius:12px;line-height:1.6}.brand-seo-company svg{display:inline-block;vertical-align:-2px;margin-right:4px}.brand-seo-company strong{white-space:nowrap}}

/* 같은 브랜드명을 등록한 가맹본부가 여럿일 때 */
.brand-multi-company{max-width:1120px;margin:0 auto 28px;padding:24px;border:2px solid #d14343;border-radius:var(--krds-radius-large2,16px);background:#fdf5f5}
.brand-multi-company-head{display:flex;gap:12px;align-items:flex-start;color:#a32828}
.brand-multi-company-head strong{display:block;font-size:19px;line-height:1.4;color:#8f2222}
.brand-multi-company-head p{margin:8px 0 0;font-size:16px;line-height:1.65;color:var(--krds-color-light-gray-80,#33363d)}
.brand-multi-company ul{list-style:none;margin:18px 0 12px;padding:0;display:grid;gap:9px}
.brand-multi-company li{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:baseline;padding:14px 16px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:var(--krds-radius-medium2,10px);background:#fff}
.brand-multi-company li strong{font-size:17px;color:var(--krds-color-light-gray-90,#1e2124)}
.brand-multi-company li span{font-size:14px;color:var(--krds-color-light-gray-70,#55595c)}
.brand-multi-company>small{display:block;font-size:14px;line-height:1.6;color:var(--krds-color-light-gray-70,#55595c)}
@media(max-width:620px){.brand-multi-company{padding:18px 15px}.brand-multi-company-head strong{font-size:17px}.brand-multi-company-head p{font-size:15px}}

/* TOP 순위 페이지 */
.top-page{max-width:1000px;margin:0 auto;padding:0 20px 64px}
.top-hero{padding:36px 0 12px}
.top-hero h1{margin:0 0 12px;font-size:34px;line-height:1.3;letter-spacing:-.03em;color:var(--krds-color-light-gray-90,#1e2124)}
.top-lead{margin:0 0 10px;max-width:720px;font-size:17px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d)}
.top-stamp{margin:0;font-size:14px;color:var(--krds-color-light-gray-70,#55595c)}
.top-caveat{display:flex;gap:9px;align-items:flex-start;margin:0 0 24px;padding:16px 18px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:var(--krds-radius-medium2,10px);background:var(--krds-color-light-gray-5,#f7f8f9);font-size:15px;line-height:1.65;color:var(--krds-color-light-gray-80,#33363d)}
.top-caveat svg{flex-shrink:0;margin-top:2px;color:var(--krds-color-light-primary-60,#0b50d0)}
.top-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.top-list li{display:grid;grid-template-columns:48px 1fr auto auto;gap:14px;align-items:center;padding:16px 18px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:var(--krds-radius-medium2,10px);background:#fff}
.top-go{display:inline-flex;align-items:center;gap:5px;min-height:40px;padding:0 13px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:8px;color:var(--krds-color-light-primary-60,#1f5ed4);font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.top-go:hover{border-color:var(--krds-color-light-primary-50,#256ef4);background:var(--krds-color-light-primary-5,#f0f5ff)}
.top-list li:nth-child(-n+3){border-color:var(--krds-color-light-primary-50,#256ef4);background:#f4f8ff}
.top-rank{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:var(--krds-color-light-gray-10,#eceef0);font-size:16px;font-weight:800;color:var(--krds-color-light-gray-80,#33363d)}
.top-list li:nth-child(-n+3) .top-rank{background:var(--krds-color-light-primary-50,#256ef4);color:#fff}
.top-body{display:grid;gap:3px;min-width:0}
.top-body strong{font-size:18px;color:var(--krds-color-light-gray-90,#1e2124)}
.top-body small{font-size:14px;color:var(--krds-color-light-gray-70,#55595c)}
.top-value{display:grid;gap:2px;justify-items:end;text-align:right}
.top-value b{font-size:22px;color:var(--krds-color-light-primary-60,#0b50d0)}
.top-value small{font-size:13px;color:var(--krds-color-light-gray-70,#55595c)}
.top-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin:8px 0 32px}
.top-card{display:grid;gap:7px;padding:24px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:var(--krds-radius-large2,16px);background:#fff;text-decoration:none}
.top-card:hover{border-color:var(--krds-color-light-primary-50,#256ef4)}
.top-card strong{font-size:20px;color:var(--krds-color-light-gray-90,#1e2124)}
.top-card p{margin:0;font-size:15px;line-height:1.6;color:var(--krds-color-light-gray-70,#55595c)}
.top-card b{font-size:19px;color:var(--krds-color-light-primary-60,#0b50d0)}
.top-card span{display:inline-flex;align-items:center;gap:5px;font-size:14px;font-weight:700;color:var(--krds-color-light-primary-60,#0b50d0)}
.top-next{margin:36px 0 20px;padding:28px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:var(--krds-radius-large2,16px);background:var(--krds-color-light-gray-5,#f7f8f9)}
.top-next h2{margin:0 0 8px;font-size:22px;color:var(--krds-color-light-gray-90,#1e2124)}
.top-next p{margin:0 0 16px;font-size:16px;line-height:1.65;color:var(--krds-color-light-gray-70,#55595c)}
.top-siblings{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}
.top-siblings a{display:inline-flex;align-items:center;gap:6px;padding:12px 18px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:999px;font-size:15px;color:var(--krds-color-light-gray-80,#33363d);text-decoration:none}
.top-siblings a:hover{border-color:var(--krds-color-light-primary-50,#256ef4);color:var(--krds-color-light-primary-60,#0b50d0)}
.top-empty{padding:28px;text-align:center;color:var(--krds-color-light-gray-70,#55595c)}
@media(max-width:620px){
  .top-page{padding:0 15px 48px}
  .top-hero h1{font-size:26px}
  .top-lead{font-size:16px}
  .top-list li{grid-template-columns:36px 1fr;padding:14px}
  .top-go{grid-column:1/-1;justify-content:center}
  .top-rank{width:32px;height:32px;font-size:14px}
  .top-value{grid-column:2;justify-items:start;text-align:left;margin-top:4px}
  .top-body strong{font-size:16px}
}
.top-flag{display:inline-block;margin-top:4px;padding:3px 9px;border-radius:999px;background:#fdecec;color:#a32828;font-size:13px;font-style:normal;font-weight:700}
.top-more{margin:16px 0 0;font-size:14px;color:var(--krds-color-light-gray-70,#55595c)}
/* 연도별 폐업률 추이 그래프 */
.trend-figure{margin:0 0 26px;padding:20px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:var(--krds-radius-large2,16px);background:#fff}
.trend-chart{display:block;width:100%;height:auto}
.trend-figure figcaption{margin-top:12px;font-size:14px;line-height:1.6;color:var(--krds-color-light-gray-70,#55595c)}
@media(max-width:720px){
  /* 좁은 화면에서는 선 끝 라벨이 잘리므로 가로로 밀어서 본다 */
  .trend-figure{padding:14px;overflow-x:auto}
  .trend-chart{min-width:640px}
}

/* KRDS 로 헤더 배경이 흰색이 됐는데 워드마크 글자는 흰색(#fff)으로 남아 있어
   메인 헤더에서만 로고 이름이 안 보였다. 푸터·브랜드 페이지는 별도 규칙이 있어 멀쩡했다. */
.calc-header .brand-wordmark strong{color:var(--krds-color-light-gray-90,#1e2124)}
.calc-header .brand-wordmark small{color:var(--krds-color-light-gray-60,#8a8f94)}

/* 순위 목차의 미리보기 블록 */
.top-preview{margin:0 0 28px}
.top-preview-head{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;justify-content:space-between;margin-bottom:12px}
.top-preview-head h2{margin:0;font-size:23px;color:var(--krds-color-light-gray-90,#1e2124)}
.top-preview-head p{margin:4px 0 0;font-size:15px;color:var(--krds-color-light-gray-70,#55595c)}
.top-preview-head a{display:inline-flex;align-items:center;gap:5px;padding:10px 16px;border:1px solid var(--krds-color-light-primary-50,#256ef4);border-radius:999px;color:var(--krds-color-light-primary-60,#0b50d0);font-size:15px;font-weight:700;text-decoration:none;white-space:nowrap}
.top-preview-head a:hover{background:var(--krds-color-light-primary-5,#f4f8ff)}
@media(max-width:620px){.top-preview-head h2{font-size:20px}.top-preview-head p{font-size:14px}}

/* 순위 막대 — 숫자만으로는 격차가 안 읽힌다 */
.top-list-bars li{grid-template-columns:48px 1fr auto;align-items:center}
.top-bar{display:block;height:7px;margin:7px 0 6px;border-radius:5px;background:var(--krds-color-light-gray-20,#e1e3e6);overflow:hidden}
.top-bar i{display:block;height:100%;border-radius:5px;background:var(--krds-color-light-primary-50,#256ef4)}
.top-list-bars li:nth-child(-n+3) .top-bar i{background:var(--krds-color-light-primary-60,#0b50d0)}
.top-value small.up{color:#a32828;font-weight:700}
.top-value small.down{color:#1d6b3f;font-weight:700}
@media(max-width:620px){.top-list-bars li{grid-template-columns:36px 1fr}.top-bar{margin:6px 0 5px}}
.top-baseline{margin:6px 0 0 !important;font-size:14px;color:var(--krds-color-light-gray-60,#8a8f94)}
.top-link{display:inline-flex;align-items:center;gap:5px;color:var(--krds-color-light-gray-90,#1e2124);font-size:18px;font-weight:700;text-decoration:none}
.top-link span{color:var(--krds-color-light-primary-60,#256ef4);font-size:15px;opacity:0;transition:opacity .15s}
.top-list-bars li:hover .top-link{color:var(--krds-color-light-primary-60,#0b50d0)}
.top-list-bars li:hover .top-link span{opacity:1}
.top-link:focus-visible{outline:3px solid var(--krds-color-light-primary-50,#256ef4);outline-offset:3px;border-radius:4px}
@media(max-width:620px){.top-link{font-size:16px}.top-link span{opacity:1}}

/* 광고 슬롯 — 본문을 가리지 않는 자리에만 둔다 */
/* 사이드 레일을 놓을 자리가 없으면 아예 숨긴다. 본문을 밀면 안 된다. */

/* 24시간 광고 없이 보기 제안 */

/* 법적 고지 페이지 — 읽으라고 만든 문서다. 글자를 작게 만들지 않는다. */
.legal-page{max-width:820px;margin:0 auto;padding:0 20px 72px}
.legal-page h1{margin:32px 0 8px;font-size:32px;letter-spacing:-.03em;color:var(--krds-color-light-gray-90,#1e2124)}
.legal-stamp{margin:0 0 22px;font-size:14px;color:var(--krds-color-light-gray-60,#8a8f94)}
.legal-lead{margin:0 0 30px;padding:18px 20px;border-left:4px solid var(--krds-color-light-primary-50,#256ef4);background:var(--krds-color-light-gray-5,#f7f8f9);font-size:17px;line-height:1.75;color:var(--krds-color-light-gray-80,#33363d)}
.legal-page section{margin-bottom:30px}
.legal-page h2{margin:0 0 10px;font-size:21px;color:var(--krds-color-light-gray-90,#1e2124)}
.legal-page p{margin:0 0 12px;font-size:16px;line-height:1.8;color:var(--krds-color-light-gray-80,#33363d)}
.legal-page ul{margin:0 0 12px;padding-left:20px}
.legal-page li{margin-bottom:8px;font-size:16px;line-height:1.75;color:var(--krds-color-light-gray-80,#33363d)}
.legal-page a{color:var(--krds-color-light-primary-60,#0b50d0)}
.legal-table{width:100%;margin:12px 0;border-collapse:collapse;font-size:16px}
.legal-table th,.legal-table td{padding:12px 14px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);text-align:left;line-height:1.6}
.legal-table th{background:var(--krds-color-light-gray-5,#f7f8f9);color:var(--krds-color-light-gray-90,#1e2124);white-space:nowrap}
.legal-table td{color:var(--krds-color-light-gray-80,#33363d)}
.footer-legal{display:inline-flex;gap:14px;flex-wrap:wrap}
.footer-legal a{color:inherit;text-decoration:underline}
.brand-seo-footer a{color:inherit}

/* 폰에서 누르는 자리를 44px 로 넓힌다.
   글자 높이만 믿으면 머리글 메뉴가 20px, 바닥글의 개인정보처리방침이 10px 이다.
   주 사용자가 50대인데 10px 짜리 링크는 몇 번을 눌러도 안 눌린다.
   글자 크기는 그대로 두고 위아래 여백만 준다 — 보기는 그대로, 누르기만 쉬워진다. */
@media(max-width:768px){
  .calc-nav a, .brand-seo-header nav a, .directory-links a,
  .footer-legal a, .calc-footer a, .brand-seo-footer a,
  .brand-seo-breadcrumb a, .brand-seo-breadcrumb span,
  .top-more a, .top-caveat a, .loc-missing a, .bh-caveat a,
  .verification-directory-link, .top-next a, .loc-back{
    display:inline-flex;align-items:center;min-height:44px}
  /* 바닥글 링크는 줄 간격이 좁아 44px 상자끼리 붙는다. 사이를 벌린다. */
  .footer-legal{gap:6px 18px}
  /* 문단 한가운데 있는 메일 주소는 44px 상자로 만들면 줄이 벌어져 글이 읽기 나빠진다.
     대신 좌우로 여백을 주고 밑줄을 두껍게 해서 손가락이 닿을 자리를 넓힌다. */
  .legal-page a[href^="mailto:"]{padding:11px 6px;text-underline-offset:4px;text-decoration-thickness:2px}
  .reset-button{min-height:44px}
}
@media(max-width:620px){
  .legal-page{padding:0 15px 56px}
  .legal-page h1{font-size:25px}
  .legal-page h2{font-size:19px}
  .legal-page p,.legal-page li,.legal-table{font-size:15px}
  .legal-table{display:block;overflow-x:auto}
}

/* 관리자 화면. 공개 페이지가 아니라 도구다 — 밀도를 높이고 장식을 줄인다. */
.admin-page{max-width:1140px;margin:0 auto;padding:28px 20px 72px}
/* 칸 바로 가기. 휴대폰에서 주문 표가 문의 카드 밑 7,500px 에 있었다(2026-10-03). 위에 붙어 있게 한다. */
.admin-jump{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;gap:6px;margin:0 0 18px;padding:10px 0;background:var(--krds-color-light-gray-5,#f4f5f6)}
.admin-jump a{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border:1px solid var(--krds-color-light-gray-30,#b1b8be);border-radius:8px;background:#fff;color:#1e2124;font-size:14px;font-weight:600;text-decoration:none}
.admin-jump b{color:#0b50d0}
#inquiries,#orders,#reviews,#leads{scroll-margin-top:72px}
.admin-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.admin-head h1{margin:0 0 4px;font-size:26px;letter-spacing:-.03em;color:var(--krds-color-light-gray-90,#1e2124)}
.admin-head p{margin:0;font-size:14px;color:var(--krds-color-light-gray-60,#8a8f94)}
.admin-head-actions{display:flex;gap:8px}
.admin-head-actions button{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:8px;background:#fff;font-size:14px;color:var(--krds-color-light-gray-80,#33363d);cursor:pointer}
.admin-head-actions button:hover{background:var(--krds-color-light-gray-5,#f7f8f9)}
.admin-head-actions button:disabled{opacity:.55;cursor:default}
.admin-head-actions .admin-ghost{color:var(--krds-color-light-gray-60,#8a8f94)}

.admin-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:12px}
.admin-cards article{display:flex;flex-direction:column;gap:2px;padding:16px 18px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:12px;background:#fff}
.admin-card-icon{color:var(--krds-color-light-primary-60,#256ef4);margin-bottom:4px}
.admin-cards strong{font-size:28px;letter-spacing:-.03em;color:var(--krds-color-light-gray-90,#1e2124)}
.admin-cards span:last-child{font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94)}
.admin-note{margin:0 0 22px;font-size:13px;line-height:1.6;color:var(--krds-color-light-gray-60,#8a8f94)}
.admin-cache{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin:0 0 20px;padding:16px 18px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:12px;background:#fff}
.admin-cache strong{display:block;font-size:15px;color:var(--krds-color-light-gray-90,#1e2124)}
.admin-cache p{margin:5px 0 0;font-size:13px;line-height:1.6;color:var(--krds-color-light-gray-70,#5c6169)}
.admin-cache-actions{display:flex;gap:8px;flex-wrap:wrap}
.admin-cache-actions button{min-height:40px;padding:0 14px;border:1px solid var(--krds-color-light-primary-50,#256ef4);border-radius:8px;background:var(--krds-color-light-primary-50,#256ef4);color:#fff;font-size:13px;font-weight:700;cursor:pointer}
.admin-cache-actions button.admin-ghost{background:#fff;color:var(--krds-color-light-primary-60,#1f5ed4)}
.admin-cache-actions button:disabled{opacity:.6;cursor:default}

.admin-bars-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:30px}
.admin-bars{padding:16px 18px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:12px;background:#fff}
.admin-bars h3{margin:0 0 12px;font-size:14px;color:var(--krds-color-light-gray-70,#5b5f65)}
.admin-bars ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:7px}
.admin-bars li{display:grid;grid-template-columns:88px 1fr 28px;align-items:center;gap:8px}
.admin-bar-label{font-size:13px;color:var(--krds-color-light-gray-80,#33363d);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-bar-track{height:7px;border-radius:4px;background:var(--krds-color-light-gray-10,#f0f1f3);overflow:hidden}
.admin-bar-fill{display:block;height:100%;border-radius:4px;background:var(--krds-color-light-primary-50,#256ef4)}
.admin-bar-count{font-size:13px;text-align:right;color:var(--krds-color-light-gray-60,#8a8f94);font-variant-numeric:tabular-nums}
.admin-empty-small{margin:0;font-size:13px;color:var(--krds-color-light-gray-50,#a3a8ad)}

.admin-list h2{display:flex;align-items:baseline;gap:8px;margin:0 0 12px;font-size:18px;color:var(--krds-color-light-gray-90,#1e2124)}
.admin-list h2 span{font-size:14px;font-weight:400;color:var(--krds-color-light-gray-60,#8a8f94)}
.admin-table-wrap{overflow-x:auto;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:12px;background:#fff}
.admin-table{width:100%;border-collapse:collapse;font-size:14px}
.admin-table th{padding:11px 14px;text-align:left;white-space:nowrap;font-size:13px;font-weight:600;color:var(--krds-color-light-gray-60,#8a8f94);background:var(--krds-color-light-gray-5,#f7f8f9);border-bottom:1px solid var(--krds-color-light-gray-30,#dfe1e5)}
.admin-table td{padding:12px 14px;border-bottom:1px solid var(--krds-color-light-gray-20,#e7e8ea);color:var(--krds-color-light-gray-80,#33363d);vertical-align:middle}
.admin-table tr:last-child td{border-bottom:0}
.admin-table tr.is-handed{background:var(--krds-color-light-gray-5,#f7f8f9)}
.admin-elapsed{display:block;font-size:13px;color:var(--krds-color-light-gray-90,#1e2124)}
.admin-when{display:block;font-size:13px;color:var(--krds-color-light-gray-50,#a3a8ad)}
.admin-phone{display:inline-flex;align-items:center;gap:5px;color:var(--krds-color-light-primary-60,#0b50d0);text-decoration:none;font-variant-numeric:tabular-nums}
.admin-phone:hover{text-decoration:underline}
.admin-dim{color:var(--krds-color-light-gray-50,#a3a8ad)}
.admin-hand-btn,.admin-handed{padding:6px 11px;border-radius:7px;font-size:13px;cursor:pointer;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);background:#fff;color:var(--krds-color-light-gray-70,#5b5f65)}
.admin-handed{border-color:var(--krds-color-light-primary-30,#a3c1f7);background:var(--krds-color-light-primary-5,#f0f5ff);color:var(--krds-color-light-primary-60,#0b50d0)}
.admin-empty{padding:34px;text-align:center;font-size:14px;color:var(--krds-color-light-gray-50,#a3a8ad);border:1px dashed var(--krds-color-light-gray-30,#dfe1e5);border-radius:12px}
/* 주문 처리대. 상담 신청 표와 같은 뼈대를 쓰되, 하루에 누르는 버튼이 하나뿐이도록 짰다. */
.admin-orders{margin-bottom:44px;padding-bottom:36px;border-bottom:1px solid var(--krds-color-light-gray-20,#e7e8ea)}
.admin-orders .admin-head h2{margin:0 0 4px;font-size:24px;letter-spacing:-.03em;color:var(--krds-color-light-gray-90,#1e2124)}
.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin-bottom:18px}
.admin-stats div{padding:13px 15px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:11px;background:#fff}
.admin-stats b{display:block;font-size:19px;font-weight:700;letter-spacing:-.02em}
.admin-stats span{display:block;margin-top:3px;font-size:12px;color:var(--krds-color-light-gray-60,#8a8f94)}
/* 금액은 다른 칸(건수)보다 길다. 390px 에서 '5,549,000원' 이 110px 칸 밖으로 나갔다(2026-10-03). 두 칸을 쓴다. */
.admin-stats div.is-wide{grid-column:span 2}
.admin-message{margin:0 0 14px;padding:10px 14px;border-radius:8px;background:#f2f6fd;font-size:13.5px;color:#1b4f9c}
.admin-table td small{display:block;margin-top:3px;font-size:12px;color:var(--krds-color-light-gray-60,#8a8f94)}
.admin-memo{font-style:italic}
.admin-none{color:var(--krds-color-light-gray-50,#a3a8ad)}
.admin-steps{display:inline-flex;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:8px;overflow:hidden}
.admin-steps button{padding:7px 10px;border:0;border-right:1px solid var(--krds-color-light-gray-30,#dfe1e5);background:#fff;font-size:12.5px;color:var(--krds-color-light-gray-70,#5b6068);cursor:pointer;white-space:nowrap}
.admin-steps button:last-child{border-right:0}
.admin-steps button:hover:not(:disabled){background:var(--krds-color-light-gray-5,#f7f8f9)}
.admin-steps button.is-now{background:#0f3b7a;color:#fff;font-weight:600;cursor:default}
.admin-steps button:disabled:not(.is-now){opacity:.5;cursor:default}
/* 휴대폰(390px)에서 주문 표 칸이 눌려 주소가 '서울/특별/시' 처럼 한두 글자씩 끊기고, 단계 버튼은 화면 밖(546px)으로 나갔다(2026-10-02).
   칸이 일곱 개라 390px 에 다 넣을 수 없다. 표에 최소 폭을 주고 감싼 상자(.admin-table-wrap, overflow-x:auto)에서 옆으로 민다. */
@media (max-width:760px){.admin-table{min-width:820px}.admin-table td{white-space:normal}.admin-table-wrap{-webkit-overflow-scrolling:touch}}
/* 자동 발송이 없을 때 손으로 보내는 자리. 문구를 지어내게 두지 않고 완성된 것을 준다. */
.admin-draft{margin-bottom:18px;padding:16px 18px;border:1px solid #dbe3ee;border-radius:12px;background:#f6f9ff}
.admin-draft p{margin:0 0 10px;font-size:13.5px;color:#33363d}
.admin-draft textarea{width:100%;padding:11px 13px;border:1px solid #d7dee8;border-radius:9px;font-size:13.5px;font-family:inherit;line-height:1.6;resize:vertical;background:#fff}
.admin-draft-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.admin-draft-row a,.admin-draft-row button{padding:8px 13px;border:1px solid #c8d3e4;border-radius:8px;background:#fff;font-size:13px;color:#1b4f9c;text-decoration:none;cursor:pointer}
.admin-draft-row button.is-quiet{color:var(--krds-color-light-gray-60,#8a8f94);border-color:var(--krds-color-light-gray-30,#dfe1e5)}
.admin-draft-row button:disabled{opacity:.5;cursor:default}
.admin-error{margin:0 0 16px;padding:11px 14px;border-radius:8px;background:#fdf0f0;color:#b3261e;font-size:14px}

.admin-login{max-width:340px;margin:80px auto;text-align:center}
.admin-login-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:var(--krds-color-light-gray-5,#f7f8f9);color:var(--krds-color-light-gray-60,#8a8f94);margin-bottom:14px}
.admin-login h1{margin:0 0 6px;font-size:22px;color:var(--krds-color-light-gray-90,#1e2124)}
.admin-login p{margin:0 0 20px;font-size:14px;color:var(--krds-color-light-gray-60,#8a8f94)}
.admin-login form{display:flex;flex-direction:column;gap:9px}
.admin-login input{padding:11px 13px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:8px;font-size:15px}
.admin-login input:focus{outline:2px solid var(--krds-color-light-primary-50,#256ef4);outline-offset:-1px}
.admin-login button{padding:11px;border:0;border-radius:8px;background:var(--krds-color-light-primary-50,#256ef4);color:#fff;font-size:15px;cursor:pointer}
.admin-login button:disabled{opacity:.5;cursor:default}
.admin-login-error{margin-top:12px !important;color:#b3261e !important}

@media(max-width:900px){
  .admin-cards{grid-template-columns:repeat(2,1fr)}
  .admin-bars-row{grid-template-columns:1fr}
}

/* 자리 분석. 목록에서 건물을 고르고 상세로 들어가는 두 단계 화면이다. */
.loc-intro{max-width:860px;margin:0 auto 22px;padding:0 20px}
.loc-intro h1{margin:26px 0 10px;font-size:31px;letter-spacing:-.03em;color:var(--krds-color-light-gray-90,#1e2124)}
.loc-intro p{margin:0;font-size:16px;line-height:1.75;color:var(--krds-color-light-gray-70,#5b5f65)}
.loc-wrap{max-width:860px;margin:0 auto;padding:0 20px 40px}
.loc-controls{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;padding:16px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:12px;background:var(--krds-color-light-gray-5,#f7f8f9)}
.loc-controls label{display:flex;flex-direction:column;gap:5px;flex:1 1 170px}
.loc-controls label span{font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94)}
.loc-controls select{padding:10px 11px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:8px;font-size:15px;background:#fff}
.loc-controls button{display:inline-flex;align-items:center;gap:6px;padding:11px 20px;border:0;border-radius:8px;background:var(--krds-color-light-primary-50,#256ef4);color:#fff;font-size:15px;cursor:pointer}
.loc-controls button:disabled{opacity:.6;cursor:default}
.loc-spin{animation:loc-rotate 1s linear infinite}
@keyframes loc-rotate{to{transform:rotate(360deg)}}
.loc-error{margin:16px 0 0;padding:11px 14px;border-radius:8px;background:#fdf0f0;color:#b3261e;font-size:14px}
.loc-loading{display:flex;align-items:center;gap:8px;margin:24px 0;font-size:15px;color:var(--krds-color-light-gray-60,#8a8f94)}
.loc-note{margin:8px 0 0;font-size:13px;line-height:1.6;color:var(--krds-color-light-gray-60,#8a8f94)}
.loc-empty{margin:22px 0;padding:30px;text-align:center;font-size:14px;color:var(--krds-color-light-gray-50,#a3a8ad);border:1px dashed var(--krds-color-light-gray-30,#dfe1e5);border-radius:12px}

.loc-summary{display:flex;align-items:baseline;gap:8px;margin:24px 0 0}
.loc-summary strong{font-size:27px;letter-spacing:-.03em;color:var(--krds-color-light-primary-60,#0b50d0)}
.loc-summary span{font-size:15px;color:var(--krds-color-light-gray-70,#5b5f65)}
.loc-filter{display:flex;align-items:center;gap:8px;margin:16px 0 12px;padding:0 12px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:9px;background:#fff;color:var(--krds-color-light-gray-50,#a3a8ad)}
.loc-filter input{flex:1;padding:11px 0;border:0;font-size:15px;outline:0}
.loc-buildings{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.loc-buildings button{display:flex;align-items:center;gap:13px;width:100%;padding:13px 15px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:11px;background:#fff;text-align:left;cursor:pointer;color:var(--krds-color-light-gray-50,#a3a8ad)}
.loc-buildings button:hover{border-color:var(--krds-color-light-primary-40,#6b9ef9);background:var(--krds-color-light-primary-5,#f0f5ff)}
.loc-b-count{flex:0 0 40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:9px;background:var(--krds-color-light-primary-5,#f0f5ff);color:var(--krds-color-light-primary-60,#0b50d0);font-size:16px;font-weight:600}
.loc-b-main{flex:1 1 0;width:0;display:flex;flex-direction:column;gap:2px;min-width:0} /* width:0 — 줄바꿈 없는 가게 이름 줄(.loc-b-samples)이 최소 폭으로 잡혀 휴대폰 화면이 761px 로 벌어졌다(2026-10-03 390px 둘러보기). 칸은 flex 로 채운다 */
.loc-b-main strong{font-size:15px;color:var(--krds-color-light-gray-90,#1e2124);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.loc-b-addr{font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.loc-b-samples{font-size:13px;color:var(--krds-color-light-gray-50,#a3a8ad);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.loc-detail{margin-top:24px}
.loc-back{display:inline-flex;align-items:center;gap:5px;margin-bottom:16px;padding:7px 12px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:8px;background:#fff;font-size:14px;color:var(--krds-color-light-gray-70,#5b5f65);cursor:pointer}
.loc-detail h2{margin:0 0 4px;font-size:24px;letter-spacing:-.03em;color:var(--krds-color-light-gray-90,#1e2124)}
.loc-addr{margin:0 0 6px;font-size:14px;color:var(--krds-color-light-gray-60,#8a8f94)}
.brand-move-list{display:flex;gap:10px;flex-wrap:wrap;list-style:none;margin:16px 0;padding:0}
/* 2026-09-30: 옛 체크리스트 규칙(.brand-seo-content li — 번호 01·02 와 36px 칸)이 이 목록에도 걸려, 번호가 첫 칸을 차지하고
   숫자(1,361곳)가 다음 줄 36px 칸으로 밀려 있었다. check-row-layout 의 훑기가 찾았다. 한 칸으로 되돌리고 번호를 끈다. */
.brand-seo-content .brand-move-list li::before{content:none;display:none}
.brand-seo-content .brand-move-list li span{grid-column:auto}
.brand-move-list li{flex:1 1 140px;display:grid;grid-template-columns:1fr;gap:4px;padding:14px 16px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:10px;background:#fff}
.brand-move-list span{font-size:13px;color:var(--krds-color-light-gray-70,#5c6169)}
.brand-move-list b{font-size:22px;letter-spacing:-.02em;color:var(--krds-color-light-gray-90,#1e2124)}
.loc-alias{margin:0 0 18px;font-size:13px;color:var(--krds-color-light-gray-70,#5c6169)}
.loc-alias b{color:var(--krds-color-light-gray-90,#1e2124)}
.loc-stat-row{display:flex;gap:11px;flex-wrap:wrap;margin-bottom:24px}
.loc-stat-row div{flex:1 1 130px;padding:14px 16px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:11px;background:#fff}
.loc-stat-row strong{display:block;font-size:25px;letter-spacing:-.03em;color:var(--krds-color-light-gray-90,#1e2124)}
.loc-stat-row span{font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94)}
.loc-inds{margin-bottom:24px}
.loc-inds h3,.loc-floors h3,.loc-nearby h3{display:flex;align-items:center;gap:6px;margin:0 0 10px;font-size:17px;color:var(--krds-color-light-gray-90,#1e2124)}
.loc-inds ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:7px}
.loc-inds li{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:16px;background:var(--krds-color-light-gray-5,#f7f8f9);font-size:13px;color:var(--krds-color-light-gray-80,#33363d)}
.loc-inds b{color:var(--krds-color-light-primary-60,#0b50d0)}
.loc-floors{margin-bottom:26px}
.loc-floor{display:flex;gap:13px;padding:11px 0;border-top:1px solid var(--krds-color-light-gray-20,#e7e8ea)}
.loc-floor-no{flex:0 0 66px;font-size:14px;font-weight:600;color:var(--krds-color-light-gray-70,#5b5f65)}
.loc-floor ul{margin:0;padding:0;list-style:none;flex:1;display:flex;flex-direction:column;gap:5px}
.loc-floor li{font-size:14px;color:var(--krds-color-light-gray-90,#1e2124)}
.loc-floor li span{margin-left:7px;font-size:13px;color:var(--krds-color-light-gray-50,#a3a8ad)}
.loc-nearby ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}
.loc-nearby li{display:flex;align-items:baseline;gap:8px;padding:8px 12px;border-radius:8px;background:var(--krds-color-light-gray-5,#f7f8f9);font-size:14px}
.loc-nearby li strong{color:var(--krds-color-light-gray-90,#1e2124)}
.loc-nearby li span{font-size:13px;color:var(--krds-color-light-gray-50,#a3a8ad)}
@media(max-width:620px){
  .loc-intro h1{font-size:25px}
  .loc-controls label{flex:1 1 100%}
  .loc-controls button{width:100%;justify-content:center}
  .loc-floor{flex-direction:column;gap:5px}
}
.directory-links{display:inline-flex;align-items:center;gap:14px;font-size:14px}
.directory-links a{color:inherit}

/* 건물 단면도. 층을 실제 건물처럼 위아래로 쌓아 보여준다.
   목록보다 이해가 빠르고, '몇 층에 뭐가 있나' 가 한눈에 들어온다. */
.bs-wrap{margin:28px 0}
.bs-head h3{margin:0 0 4px;font-size:18px;color:var(--krds-color-light-gray-90,#1e2124)}
.bs-head p{margin:0 0 14px;font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94)}
.bs-roof{position:relative;height:16px;margin:0 6px;border-radius:5px 5px 0 0;background:var(--krds-color-light-gray-70,#5b5f65)}
.bs-roof span{position:absolute;left:12px;top:-9px;padding:2px 9px;border-radius:11px;background:var(--krds-color-light-gray-90,#1e2124);color:#fff;font-size:13px;white-space:nowrap;max-width:70%;overflow:hidden;text-overflow:ellipsis}
.bs-ground{height:9px;margin:0 2px 2px;border-radius:0 0 5px 5px;background:var(--krds-color-light-gray-40,#cdd1d5)}
.bs-stack{display:flex;flex-direction:column;border-left:3px solid var(--krds-color-light-gray-40,#cdd1d5);border-right:3px solid var(--krds-color-light-gray-40,#cdd1d5)}

/* 아래에서 위로 쌓여 올라온다. 층마다 조금씩 늦게 시작해 건물이 세워지는 느낌을 준다. */
.bs-floor{transform:translateY(10px);transition:transform .34s ease}
.bs-wrap.is-mounted .bs-floor{transform:none}
@media(prefers-reduced-motion:reduce){
  .bs-floor{transform:none;transition:none}
}

.bs-floor-btn{display:flex;align-items:stretch;gap:9px;width:100%;padding:0;border:0;border-bottom:1px solid var(--krds-color-light-gray-20,#e7e8ea);background:#fff;cursor:pointer;text-align:left}
.bs-floor:last-child .bs-floor-btn{border-bottom:0}
.bs-floor-btn:hover{background:var(--krds-color-light-primary-5,#f0f5ff)}
.bs-floor.is-open .bs-floor-btn{background:var(--krds-color-light-primary-5,#f0f5ff)}
.bs-no{flex:0 0 46px;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:var(--krds-color-light-gray-70,#5b5f65);background:var(--krds-color-light-gray-5,#f7f8f9);border-right:1px solid var(--krds-color-light-gray-20,#e7e8ea)}
.bs-slab{position:relative;flex:1;min-width:0;padding:8px 0}
.bs-cells{display:flex;gap:2px;align-items:stretch;min-height:26px;flex-wrap:wrap}
.bs-cell{position:relative;min-width:26px;max-width:190px;height:26px;border-radius:3px;overflow:hidden;flex-basis:0;transition:filter .15s ease}
.bs-cell:hover{filter:brightness(1.12)}
.bs-cell-name{position:absolute;inset:0;display:flex;align-items:center;padding:0 6px;font-size:13px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 1px rgba(0,0,0,.25)}
.bs-more{display:flex;align-items:center;padding:0 8px;height:26px;border-radius:3px;background:var(--krds-color-light-gray-10,#f0f1f3);color:var(--krds-color-light-gray-60,#8a8f94);font-size:13px}
.bs-bar{display:block;height:2px;margin-top:5px;border-radius:2px;background:var(--krds-color-light-primary-30,#a3c1f7)}
.bs-count{flex:0 0 34px;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94);font-variant-numeric:tabular-nums}

.bs-list{margin:0;padding:10px 12px 14px 55px;list-style:none;display:flex;flex-direction:column;gap:6px;background:var(--krds-color-light-primary-5,#f0f5ff);border-bottom:1px solid var(--krds-color-light-gray-20,#e7e8ea)}
.bs-list li{display:flex;align-items:baseline;gap:8px;font-size:14px}
.bs-list i{flex:0 0 9px;height:9px;border-radius:2px;align-self:center}
.bs-list strong{color:var(--krds-color-light-gray-90,#1e2124);font-weight:500}
.bs-list span{font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94)}

.bs-unknown{margin-top:16px;padding:12px;border:1px dashed var(--krds-color-light-gray-30,#dfe1e5);border-radius:10px}
.bs-unknown>p{margin:0 0 8px;font-size:13px;line-height:1.6;color:var(--krds-color-light-gray-60,#8a8f94)}
.bs-legend{margin:16px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.bs-legend li{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:14px;background:var(--krds-color-light-gray-5,#f7f8f9);font-size:13px;color:var(--krds-color-light-gray-80,#33363d)}
.bs-legend i{width:9px;height:9px;border-radius:2px}
.bs-legend b{color:var(--krds-color-light-gray-60,#8a8f94);font-weight:500}
@media(max-width:620px){
  .bs-no{flex:0 0 38px;font-size:13px}
  .bs-cell{max-width:120px}
  .bs-list{padding-left:16px}
}

/* 레이더 마크. 바깥 상자의 크기·반응형 규칙은 그대로 쓰고 안쪽 배치만 덮어쓴다.
   .franchise-mark.is-radar 는 명시도가 더 높아 미디어쿼리의 padding 도 이긴다. */
.franchise-mark.is-radar{display:flex;align-items:center;justify-content:center;padding:5px}
.franchise-mark.is-radar svg{width:100%;height:100%;display:block}
.radar-sweep{transform-origin:50% 50%}
/* 로고가 계속 돌면 시선을 뺏는다. 마우스를 올렸을 때만 한 바퀴 훑는다. */
.calc-brand:hover .radar-sweep,
.brand-seo-logo:hover .radar-sweep,
.directory-brand:hover .radar-sweep{animation:radar-scan 1.4s linear}
@keyframes radar-scan{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){
  .calc-brand:hover .radar-sweep,
  .brand-seo-logo:hover .radar-sweep,
  .directory-brand:hover .radar-sweep{animation:none}
}

/* 신호 카드의 기준 태그. 브랜드 이름 아래 놓인 숫자가 업종 평균인지 브랜드 값인지
   보이지 않으면, 업종 평균을 그 브랜드의 값으로 읽는다. 실제로 그렇게 읽혔다. */
.risk-scope{display:inline-block;margin:0 0 6px;padding:2px 8px;border-radius:10px;background:var(--krds-color-light-gray-10,#f0f1f3);color:var(--krds-color-light-gray-60,#8a8f94);font-size:13px;letter-spacing:-.01em;white-space:nowrap}
.risk-signal-pass .risk-scope{background:#e8f5ee;color:#1b6b42}
.risk-signal-danger .risk-scope{background:#fdeaea;color:#b3261e}
.risk-signal-warn .risk-scope{background:#fdf3e3;color:#9a6412}

/* 불러오는 중 뼈대. 값 자리를 비워두면 멈춘 것처럼 보인다. */
.risk-signal-loading{border-color:var(--krds-color-light-gray-30,#dfe1e5)}
.risk-skeleton{border-radius:6px;background:linear-gradient(90deg,#eef0f2 25%,#f7f8f9 37%,#eef0f2 63%);background-size:400% 100%;animation:risk-shimmer 1.3s ease infinite}
.risk-skeleton-value{height:30px;width:58%;margin:2px 0 10px}
.risk-skeleton-line{height:11px;width:100%;margin-bottom:6px}
.risk-skeleton-line.is-short{width:72%}
@keyframes risk-shimmer{from{background-position:100% 50%}to{background-position:0 50%}}
@media(prefers-reduced-motion:reduce){.risk-skeleton{animation:none}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.loc-relation{margin:6px 0 0;font-size:13px;line-height:1.7;color:var(--krds-color-light-gray-60,#8a8f94)}
.loc-relation b{color:var(--krds-color-light-gray-80,#33363d);font-weight:600}

/* 자료 정정 요청 배너. 광고 CSS 를 걷어낼 때 같이 지워져 마크업만 남아 있었다.
   광고가 아니라 '틀린 자료를 알려달라' 는 안내이므로 조용한 톤으로 다시 쓴다. */
.bottom-ad{display:flex;align-items:center;gap:16px;flex-wrap:wrap;max-width:1120px;margin:34px auto 0;padding:18px 22px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:14px;background:var(--krds-color-light-gray-5,#f7f8f9)}
/* position:static 이 핵심이다. 원래 규칙(.ad-label)이 position:absolute·top:9px·right:12px 인데
   .bottom-ad 에는 기준점(position:relative)이 없어서, 이 딱지가 페이지 맨 위 오른쪽 —
   즉 헤더의 '브랜드 검색' 버튼 위에 겹쳐 떠 있었다. 라이브 모바일 화면에서 발견했다.
   지금은 flex 줄 안에 들어가는 알약이라 absolute 로 띄울 이유가 없다. */
.bottom-ad .ad-label{position:static;padding:3px 10px;border-radius:11px;background:var(--krds-color-light-gray-20,#e7e8ea);color:var(--krds-color-light-gray-60,#8a8f94);font-size:13px;white-space:nowrap}
.bottom-ad>div{flex:1;min-width:220px}
.bottom-ad strong{display:block;margin-bottom:3px;font-size:15px;color:var(--krds-color-light-gray-90,#1e2124)}
.bottom-ad p{margin:0;font-size:13px;line-height:1.65;color:var(--krds-color-light-gray-60,#8a8f94)}
.bottom-ad a{display:inline-flex;align-items:center;gap:5px;padding:9px 15px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:9px;background:#fff;font-size:14px;color:var(--krds-color-light-gray-80,#33363d);text-decoration:none;white-space:nowrap}
.bottom-ad a:hover{border-color:var(--krds-color-light-primary-40,#6b9ef9);color:var(--krds-color-light-primary-60,#0b50d0)}
@media(max-width:620px){.bottom-ad{padding:15px 16px}.bottom-ad a{width:100%;justify-content:center}}

/* 이 자리의 1년. 숫자를 먼저 크게 보여주고 목록은 그 아래 둔다.
   목록만 주면 몇 곳인지 세어봐야 한다. */
.bh-wrap{margin:30px 0 8px;padding:20px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:14px;background:#fff}
.bh-wrap h3{display:flex;align-items:center;gap:7px;margin:0 0 4px;font-size:19px;color:var(--krds-color-light-gray-90,#1e2124)}
.bh-period{margin:0 0 16px;font-size:14px;color:var(--krds-color-light-gray-60,#8a8f94)}
.bh-loading{display:flex;align-items:center;gap:8px;margin:0;font-size:15px;color:var(--krds-color-light-gray-60,#8a8f94)}
.bh-none{margin:0;padding:16px 18px;border-radius:10px;background:var(--krds-color-light-gray-5,#f7f8f9);font-size:15px;line-height:1.7;color:var(--krds-color-light-gray-70,#5b5f65)}
.bh-counts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}
.bh-count{display:flex;flex-direction:column;gap:2px;padding:16px 18px;border-radius:12px}
.bh-count svg{margin-bottom:4px}
.bh-count strong{font-size:27px;letter-spacing:-.03em;line-height:1.1}
.bh-count span{font-size:14px;line-height:1.5}
.bh-count-gone{background:#fdf2f2;color:#b3261e}
.bh-count-gone span{color:#8a3b34}
.bh-count-came{background:#eff6ee;color:#2f7d52}
.bh-count-came span{color:#3f6b52}
.bh-lists{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.bh-list h4{margin:0 0 8px;font-size:15px;color:var(--krds-color-light-gray-80,#33363d)}
.bh-list-more{margin-top:6px}
.bh-list-more>summary{cursor:pointer;min-height:40px;display:flex;align-items:center;font-size:14px;font-weight:600;color:#0b50d0}
.bh-list-more>ul{margin-top:6px}
.bh-list ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:7px}
.bh-list li{display:flex;flex-direction:column;gap:1px;padding:9px 12px;border-radius:9px;background:var(--krds-color-light-gray-5,#f7f8f9)}
.bh-list strong{font-size:15px;font-weight:500;color:var(--krds-color-light-gray-90,#1e2124)}
.bh-list span{font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94)}
.bh-caveat{margin:18px 0 0;padding-top:14px;border-top:1px solid var(--krds-color-light-gray-20,#e7e8ea);font-size:13px;line-height:1.7;color:var(--krds-color-light-gray-60,#8a8f94)}
.bh-caveat:empty{display:none} /* 나간 곳도 뺀 곳도 없으면 비어 있다 — 테두리만 남지 않게 */
.bh-more{margin:9px 0 0;font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94)}
.bh-floors{margin:22px 0 20px;padding:18px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:12px;background:var(--krds-color-light-gray-5,#f6f7f8)}
.bh-floors h4{margin:0 0 6px;font-size:17px;color:var(--krds-color-light-gray-90,#1e2124)}
.bh-floors-lead{margin:0 0 14px;font-size:14px;line-height:1.65;color:var(--krds-color-light-gray-80,#33363d)}
.bh-floors-warn{margin:0 0 14px;padding:10px 13px;border-radius:9px;background:var(--krds-color-light-danger-5,#fdf0ef);font-size:14px;line-height:1.6;color:var(--krds-color-light-danger-60,#b32b25)}
.bh-floors ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
.bh-floors-more{margin-top:8px}
.bh-floors-more>summary{cursor:pointer;min-height:40px;display:flex;align-items:center;font-size:14px;font-weight:600;color:#0b50d0}
.bh-floors-more[open]>summary{margin-bottom:7px}
/* 인쇄: 접힌 목록을 펼쳐 찍는다(building-history.tsx 의 beforeprint). 크롬 131+ 는 CSS 만으로도 펼친다. 단추 글자는 종이에 필요 없다. */
@media print{.bh-list-more>summary,.bh-floors-more>summary{display:none}.bh-list-more::details-content,.bh-floors-more::details-content{content-visibility:visible;display:contents}}
.bh-floors li{display:grid;grid-template-columns:58px 1fr auto;gap:11px;align-items:center;padding:7px 9px;border-radius:8px;background:#fff}
.bh-floors li.is-worst{box-shadow:inset 0 0 0 1px var(--krds-color-light-danger-50,#de3730)}
.bh-floor-no{font-size:14px;font-weight:700;color:var(--krds-color-light-gray-90,#1e2124)}
.bh-floor-bar{display:flex;gap:2px;height:13px;align-items:center}
.bh-floor-bar i{display:block;height:100%;min-width:2px;border-radius:3px}
.bh-floor-gone{background:var(--krds-color-light-danger-50,#de3730)}
.bh-floor-came{background:var(--krds-color-light-primary-50,#256ef4)}
.bh-floor-num{display:grid;justify-items:end;gap:1px;white-space:nowrap}
.bh-floor-num b{font-size:15px;color:var(--krds-color-light-gray-90,#1e2124)}
.bh-floor-num small{font-size:12px;color:var(--krds-color-light-gray-60,#8a8f94)}
.bh-floors-note{margin:11px 0 0;font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94)}
@media(max-width:620px){.bh-floors li{grid-template-columns:48px 1fr}.bh-floor-num{grid-column:1/-1;justify-items:start}}
.loc-missing{margin:12px 0 0;padding:12px 14px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:10px;background:var(--krds-color-light-gray-5,#f6f7f8);font-size:14px;line-height:1.65;color:var(--krds-color-light-gray-70,#5c6169)}
@media(max-width:620px){
  .bh-counts,.bh-lists{grid-template-columns:1fr}
  .bh-count strong{font-size:24px}
}
.risk-verdict-mark.is-clear{border-color:#5fa87a;color:#8ee0aa}
/* 320~400px 에서는 오른쪽 '짚을 것 3' 표시가 자리를 먹어 제목이 네 줄로 쪼개졌다(2026-10-02). 표시를 제목 위로 올린다. */
@media (max-width:400px){.risk-verdict{display:flex;flex-direction:column;align-items:flex-start}.risk-verdict-mark{order:-1;width:auto;height:auto;min-height:36px;padding:6px 14px}.risk-verdict>div{width:100%}}

/* 카드 색 설명. 색만 칠해두고 뜻을 말하지 않으면 짐작하게 된다. */
.risk-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 14px;padding:0;list-style:none}
.risk-legend li{display:inline-flex;align-items:center;gap:7px;font-size:14px;color:var(--krds-color-light-gray-70,#5b5f65)}
.risk-legend i{width:12px;height:12px;border-radius:3px;flex:0 0 12px}
.risk-legend .is-pass{background:#2f7d52}
.risk-legend .is-warn{background:#d9a441}
.risk-legend .is-danger{background:#c8372d}
.risk-legend .is-check{background:#b4b9be}
@media(max-width:620px){.risk-legend{gap:6px 14px}.risk-legend li{font-size:13px}}

/* ── 화면 전반의 움직임 ─────────────────────────────────
   계약금 수천만원을 놓고 보는 화면이다. 튀는 연출보다 차분하게 자리잡는
   느낌이 신뢰를 준다. 그래서 짧은 거리·느린 감속·낮은 투명도 변화만 쓴다.
   모션을 줄이도록 설정한 사용자에게는 전부 끈다. */
@keyframes cr-rise{from{transform:translateY(10px)}to{transform:none}}
@keyframes cr-fade{from{opacity:0}to{opacity:1}}
@keyframes cr-sheen{from{background-position:100% 50%}to{background-position:0 50%}}

/* 브랜드 카드가 순서대로 올라온다. 지연은 인라인 style 로 준다. */
.directory-card{animation:cr-rise .42s cubic-bezier(.22,.61,.36,1) both}
.directory-grid.is-loading .directory-card{opacity:.45;transition:opacity .2s ease}

/* 목록을 기다리는 동안의 뼈대. 빈 화면이면 멈춘 것처럼 보인다. */
.directory-skeletons{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-top:14px}
.directory-skeleton{height:148px;border-radius:14px;background:linear-gradient(90deg,#eef0f2 25%,#f7f8f9 37%,#eef0f2 63%);background-size:400% 100%;animation:cr-sheen 1.4s ease infinite}

/* 결과 영역이 바뀔 때 부드럽게 들어온다. */
.risk-dashboard,.loc-detail,.loc-result,.bh-wrap{animation:cr-rise .44s cubic-bezier(.22,.61,.36,1) both}
.risk-signal{animation:cr-rise .46s cubic-bezier(.22,.61,.36,1) both}
.risk-signal:nth-child(1){animation-delay:.04s}
.risk-signal:nth-child(2){animation-delay:.10s}
.risk-signal:nth-child(3){animation-delay:.16s}
.risk-signal:nth-child(4){animation-delay:.22s}

/* 누를 수 있는 것은 눌린다는 느낌을 준다. */
.directory-card,.loc-buildings button,.bs-floor-btn,.admin-table tr{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease}
.directory-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(18,35,61,.10)}
.loc-buildings button:hover{transform:translateY(-1px)}
.directory-card:active,.loc-buildings button:active{transform:translateY(0)}

/* 큰 숫자는 살짝 늦게 또렷해진다. 값이 바뀐 걸 눈이 알아챈다. */
/* 숫자에는 페이드를 걸지 않는다. 애니메이션이 멈추면 값이 안 보인다. */

@media(prefers-reduced-motion:reduce){
  .directory-card,.risk-dashboard,.loc-detail,.loc-result,.bh-wrap,.risk-signal{animation:none}
  .directory-skeleton{animation:none}
  .directory-card:hover,.loc-buildings button:hover{transform:none}
}

/* 머리글을 화면에 붙여 둔다.
   전에는 고정이 아니어서, 메뉴를 한 번 누르면 그만큼 스크롤이 내려가고 머리글이
   화면 밖으로 사라졌다. 다른 메뉴를 쓰려면 맨 위까지 되올라가야 했다.
   '메뉴가 반응을 안 한다' 는 말이 여기서 나온다 — 한 번 쓰면 사라지니까.

   body 의 overflow-x 를 hidden 이 아니라 clip 으로 둔 것도 이것 때문이다.
   hidden 은 body 를 스크롤 컨테이너로 만들어 붙박이 머리글과 앵커 이동을 망가뜨린다.
   clip 은 가로 넘침만 자르고 스크롤 컨테이너를 만들지 않는다. */
.calc-header, .brand-seo-header, .directory-header{
  position:sticky;top:0;z-index:30}

/* 붙박이 머리글 뒤로 목표가 숨지 않게 자리를 비운다. */
[id]{scroll-margin-top:96px}
@media(max-width:760px){[id]{scroll-margin-top:84px}}

/* 지역 선택을 브랜드 검색 옆으로 옮겼다. 결과 화면 머리에 있을 때는
   '어느 지역에 낼 건가요' 를 결과를 본 뒤에야 만나서 순서가 거꾸로였다. */
/* 두 라벨이 다 .radar-search-label 이라 z-index 가 2 로 같았다. 같으면 DOM 에서
   뒤에 오는 쪽이 이긴다 — 지역 선택이 브랜드 드롭다운을 뚫고 올라왔다.
   브랜드 쪽을 위로 올리는 대신 지역 쪽을 내린다. 네이티브 select 의 목록은
   운영체제가 그리므로 z-index 와 무관하게 잘 뜬다. */
.radar-region-label{margin-top:16px;z-index:1}
.radar-region-label select{width:100%;min-height:56px;padding:0 14px;border:1px solid var(--krds-color-light-gray-60,#8a8f94);border-radius:var(--krds-radius-medium2,10px);background:#fff;color:var(--krds-color-light-gray-90,#1e2124);font-size:17px;font-weight:700}
.radar-region-label select:focus{border-color:var(--krds-color-light-primary-50,#256ef4);outline:2px solid rgba(37,110,244,.14);outline-offset:1px}

/* 포화도는 카드에서 빠졌지만 사실은 남긴다. */
.risk-dashboard-note{display:flex;align-items:flex-start;gap:8px;margin:16px 0 0;padding:13px 15px;border-radius:10px;background:var(--krds-color-light-gray-5,#f6f7f8);font-size:14px;line-height:1.65;color:var(--krds-color-light-gray-70,#5c6169)}
.risk-dashboard-note svg{flex:none;margin-top:2px;color:var(--krds-color-light-gray-60,#8a8f94)}

/* 날씨 표시. 숫자만 보면 0.4% 가 좋은 건지 모른다.
   색으로만 구분하면 색약인 분에게는 아무 표시도 아니라서 아이콘과 글자를 같이 둔다.
   근거 숫자 바로 위에 붙여 둔다 — 이 표시는 옆의 숫자를 옮긴 것이지 우리 판단이 아니다. */
.risk-weather{display:inline-flex;align-items:center;gap:5px;margin:12px 0 2px;padding:4px 11px;border-radius:99px;font-size:14px;font-weight:700;line-height:1.2}
.risk-weather svg{flex:none}
.risk-signal-danger .risk-weather{background:var(--krds-color-light-danger-5,#fdf0ef);color:var(--krds-color-light-danger-60,#b32b25)}
.risk-signal-warn .risk-weather{background:#fdf5e6;color:#8a6008}
.risk-signal-pass .risk-weather{background:var(--krds-color-light-success-5,#eef7f0);color:var(--krds-color-light-success-60,#1b7a3d)}
.risk-signal-check .risk-weather{background:var(--krds-color-light-gray-10,#f0f1f3);color:var(--krds-color-light-gray-70,#5c6169)}

/* 브랜드 비교 (/compare) — 업종을 고르고 그 안에서 두 브랜드를 고른다 */
.compare-hero h1{font-size:44px}
.compare-content{display:grid;gap:26px}
.compare-steps{display:grid;gap:16px;padding:22px 24px;border:1px solid var(--krds-color-light-gray-30,#d3d6db);border-radius:var(--krds-radius-large2,14px);background:#fff}
.compare-field{display:grid;gap:8px;min-width:0}
.compare-field>span{display:flex;align-items:center;gap:8px;color:var(--krds-color-light-gray-80,#33363d);font-size:14px;font-weight:700}
.compare-field>span em{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:var(--krds-color-light-primary-50,#246beb);color:#fff;font-size:12px;font-style:normal;font-weight:800}
.compare-field>span i{color:var(--krds-color-light-gray-60,#8a8f94);font-style:normal;font-weight:500}
.compare-field select,.compare-field input{width:100%;height:48px;padding:0 12px;border:1px solid var(--krds-color-light-gray-50,#a9aeb8);border-radius:10px;background:#fff;font-size:16px;color:var(--krds-color-light-gray-90,#1e2124)}
.compare-field select:disabled{background:var(--krds-color-light-gray-5,#f7f8f9);color:var(--krds-color-light-gray-60,#8a8f94)}
.compare-field select:focus-visible,.compare-field input:focus-visible{outline:0;border-color:var(--krds-color-light-primary-50,#246beb);box-shadow:0 0 0 3px var(--krds-color-light-primary-5,#f0f5ff)}
.compare-hint{color:var(--krds-color-light-gray-60,#8a8f94);font-size:13px;line-height:1.6}
.compare-hint.is-error{color:var(--krds-color-light-danger-60,#b32b25)}
.compare-hint button{margin-left:6px;min-height:32px;padding:0 10px;border:1px solid var(--krds-color-light-gray-40,#c1c5cc);border-radius:8px;background:#fff;font-size:12px;font-weight:700;cursor:pointer}
.compare-pair{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:14px}
.compare-versus{display:grid;place-items:center;width:38px;height:38px;margin-bottom:5px;border-radius:50%;background:var(--krds-color-light-gray-10,#f0f1f3);color:var(--krds-color-light-gray-70,#5c6169)}
.compare-reset{justify-self:start;display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 14px;border:1px solid var(--krds-color-light-gray-40,#c1c5cc);border-radius:9px;background:#fff;color:var(--krds-color-light-gray-70,#5c6169);font-size:13px;font-weight:700;cursor:pointer}
.compare-reset:hover{border-color:var(--krds-color-light-primary-50,#246beb);color:var(--krds-color-light-primary-60,#1c56c4)}
.compare-empty{margin:0;padding:34px 20px;border:1px dashed var(--krds-color-light-gray-40,#c1c5cc);border-radius:var(--krds-radius-large2,14px);color:var(--krds-color-light-gray-70,#5c6169);font-size:15px;text-align:center}
.compare-empty.is-error{border-color:#f0c4c1;background:#fdf4f3;color:var(--krds-color-light-danger-60,#b32b25)}
.compare-table-wrap{overflow-x:auto;border:1px solid var(--krds-color-light-gray-30,#d3d6db);border-radius:var(--krds-radius-large2,14px);background:#fff}
/* franchise.css 의 옛 .compare-table(div 줄 목록 시절: 위 22px·테두리·둥근 모서리)이 이 표에도 붙어
   표 위 빈 띠와 겹 테두리가 생겼다(2026-10-03). 테두리는 바깥 wrap 이 맡는다. */
.compare-table{width:100%;min-width:520px;margin:0;border:0;border-radius:0;overflow:visible;border-collapse:collapse;font-size:15px}
.compare-table thead th{padding:15px 14px;border-bottom:1px solid var(--krds-color-light-gray-30,#d3d6db);background:#fff;text-align:left;font-size:16px;line-height:1.4;word-break:keep-all;vertical-align:bottom}
.compare-table thead th:first-child{color:var(--krds-color-light-gray-70,#5c6169);font-size:13px;font-weight:700}
.compare-table thead th small{display:block;margin-top:3px;color:var(--krds-color-light-gray-70,#5c6169);font-size:12px;font-weight:500}
.compare-head-tag{display:inline-grid;place-items:center;width:20px;height:20px;margin-right:7px;border-radius:6px;background:var(--krds-color-light-gray-90,#1e2124);color:#fff;font-size:11px;font-weight:800;vertical-align:2px}
.compare-table tbody th{padding:14px;border-bottom:1px solid var(--krds-color-light-gray-20,#e4e6ea);text-align:left;font-size:14px;font-weight:700;color:var(--krds-color-light-gray-80,#33363d);word-break:keep-all}
.compare-table tbody th small{display:block;margin-top:3px;color:var(--krds-color-light-gray-60,#8a8f94);font-size:12px;font-weight:400;line-height:1.5}
.compare-table td{padding:14px;border-bottom:1px solid var(--krds-color-light-gray-20,#e4e6ea);font-size:16px;font-variant-numeric:tabular-nums;white-space:nowrap}
.compare-table td.is-marked{background:var(--krds-color-light-success-5,#eef7f0);color:var(--krds-color-light-success-60,#1b7a3d);font-weight:700}
.compare-table td.is-marked svg{margin-left:6px;vertical-align:-2px}
.compare-table tbody tr:last-child th,.compare-table tbody tr:last-child td{border-bottom:0}
.compare-unknown{color:var(--krds-color-light-gray-60,#8a8f94);font-size:14px;font-weight:400}
.compare-summary,.compare-caveat{padding:22px 24px;border:1px solid var(--krds-color-light-gray-30,#d3d6db);border-radius:var(--krds-radius-large2,14px);background:#fff}
.compare-summary h2,.compare-caveat h2{margin:0 0 13px;font-size:18px}
.compare-summary p{margin:0 0 9px;font-size:15px;line-height:1.75;color:var(--krds-color-light-gray-80,#33363d)}
.compare-verdict-guard{margin:14px 0 0!important;padding-top:13px;border-top:1px solid var(--krds-color-light-gray-20,#e4e6ea);color:var(--krds-color-light-gray-60,#8a8f94)!important;font-size:13px!important}
.compare-caveat ul{margin:0;padding-left:19px;display:grid;gap:9px}
.compare-caveat li{font-size:14px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d)}
.compare-caveat a{color:var(--krds-color-light-primary-60,#1c56c4);font-weight:700;text-decoration:underline}
.compare-links{display:flex;flex-wrap:wrap;gap:10px}
.compare-links a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1px solid var(--krds-color-light-gray-40,#c1c5cc);border-radius:10px;background:#fff;color:var(--krds-color-light-gray-80,#33363d);font-size:14px;font-weight:700}
.compare-links a:hover{border-color:var(--krds-color-light-primary-50,#246beb);color:var(--krds-color-light-primary-60,#1c56c4)}
/* 좁은 화면에서 1fr auto 1fr 을 유지하면 셀렉트 두 칸이 각각 120px 남짓으로 찌그러진다.
   위아래로 쌓고, 가운데 화살표는 가로로 눕힌다. */
@media(max-width:720px){
  .compare-hero h1{font-size:32px}
  .compare-steps{padding:18px}
  .compare-pair{grid-template-columns:1fr;gap:10px}
  .compare-versus{width:100%;height:30px;margin:0;border-radius:9px}
  .compare-table{min-width:0;font-size:14px}
  .compare-table thead th,.compare-table tbody th,.compare-table td{padding:12px 10px}
  .compare-table thead th{font-size:14px}
  .compare-table td{font-size:15px}
  .compare-summary,.compare-caveat{padding:18px}
  .compare-links a{flex:1;justify-content:center}
}
/* 320~480px 에서는 첫 칸(항목·설명)이 100px 남짓이라 설명 한 줄이 여덟 줄로 접혔다(2026-10-03).
   항목을 한 줄 통째로 올리고, 그 아래 A·B 값을 반씩 나눈다. 머리의 '항목' 칸은 빈자리라 뺀다. */
@media(max-width:480px){
  .compare-table,.compare-table thead,.compare-table tbody{display:block}
  .compare-table thead tr,.compare-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .compare-table thead th:first-child{display:none}
  .compare-table thead th{overflow-wrap:anywhere}
  .compare-table tbody th{grid-column:1/-1;padding-bottom:4px;border-bottom:0}
  .compare-table td{padding-top:8px}
}

/* 사이트 공통 머리글 (.site-header)
   머리글이 세 벌이라 페이지를 옮길 때마다 높이(72·72·76px)와 최대폭
   (1240·1200·1180px)과 로고 크기(24·24·23px)가 달라졌다. 하나로 합친다. */
.site-header{
  position:sticky;top:0;z-index:60;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  height:72px;padding:0 max(24px,calc((100% - 1200px)/2));
  background:var(--krds-color-light-gray-0,#fff);
  border-bottom:1px solid var(--krds-color-light-gray-30,#d3d6db);
}
.site-header-logo{display:inline-flex;align-items:center;min-width:0;flex:none}
.site-header-logo .brand-wordmark strong{color:var(--krds-color-light-gray-90,#1e2124);font-size:22px}
.site-header-logo .brand-wordmark small{color:var(--krds-color-light-gray-60,#8a8f94)}
/* ★ position:relative 가 이 줄의 전부다. 공식 카페 링크 안의 '새 창으로 열립니다'(.sr-only)는
   position:absolute 인데, 메뉴가 위치 지정이 없으면 그 글자는 sticky 머리글을 기준으로 놓여서
   메뉴의 스크롤 칸 밖으로 빠져나간다. 메뉴가 넘치는 걸 잘라 줘도 그 1px 글자는 안 잘리고
   문서 폭을 565px 로 밀었다 — 휴대폰에서 모든 화면이 옆으로 흔들렸다(80명 테스트, 19명이 봄).
   카페 링크를 붙인 날부터 그랬다. */
.site-header-nav{position:relative;display:flex;align-items:center;gap:6px;min-width:0;overflow-x:auto;scrollbar-width:none}
.site-header-nav::-webkit-scrollbar{display:none}
/* 메뉴마다 처음부터 옅은 바탕을 깐다. 글자만 늘어서 있으면 어디까지가 한 메뉴인지,
   누를 수 있는 것인지가 안 보인다. 바탕 → 호버 → 지금 위치, 세 단계로 진해진다. */
.site-header-nav a{
  display:inline-flex;align-items:center;
  min-height:44px;padding:0 12px;border-radius:8px;
  background:#f2f4f7;color:#464c53;
  font-size:15px;font-weight:700;white-space:nowrap;
  transition:background-color .15s ease,color .15s ease,box-shadow .15s ease;
}
.site-header-nav a:hover{background:#e3ecfd;color:#0b50d0}
/* 지금 보고 있는 곳은 빼지 않고 표시만 한다. 빼면 나머지 자리가 밀린다.
   호버와 같은 색이면 '여기' 인지 '올려 놓은 것' 인지 모른다 — 한 단계 더 진하게, 테두리까지. */
.site-header-nav a.is-current{background:#d4e2fc;color:#0b3f8a;box-shadow:inset 0 0 0 1px #9dbcf5}
.site-header-nav a.is-current:hover{background:#c7d9fb}
@media(prefers-reduced-motion:reduce){.site-header-nav a{transition:none}}
@media(max-width:900px){
  .site-header{gap:14px;padding:0 16px}
  .site-header-logo .brand-wordmark strong{font-size:19px}
  .site-header-nav a{padding:0 9px;font-size:14px}
}
@media(max-width:620px){
  /* 메뉴가 옆으로 넘친다는 걸 끝을 흐려서 알린다. 스크롤바를 숨겨 두어서 안 알리면
     네 번째 메뉴(자리 분석 — 유료로 가는 길)가 있는 줄 모른다. 꾸밈이 아니라 표시다. */
  .site-header-nav{-webkit-mask-image:linear-gradient(to right,#000 82%,transparent);mask-image:linear-gradient(to right,#000 82%,transparent)}
  .site-header{height:64px}
  .site-header-logo .brand-wordmark small{display:none}
  .site-header-nav a{padding:0 8px;font-size:13px}
}

/* 결과 화면의 '다음에 볼 것'
   브랜드 비교와 자리 분석이 머리글에만 있는 독립 메뉴라, 브랜드를 검증한 사람이
   결과를 들고 넘어갈 길이 없었다. 두 메뉴를 결과의 다음 행동으로 옮긴다. */
.risk-next{margin-top:22px;padding:22px 24px;border:1px solid var(--krds-color-light-gray-30,#d3d6db);border-radius:var(--krds-radius-large2,14px);background:var(--krds-color-light-gray-5,#f7f8f9)}
.risk-next-head{display:grid;gap:6px;margin-bottom:15px}
.risk-next-head strong{font-size:17px;color:var(--krds-color-light-gray-90,#1e2124)}
.risk-next-head span{font-size:14px;line-height:1.7;color:var(--krds-color-light-gray-70,#5c6169)}
.risk-next-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}
.risk-next-card{display:grid;gap:7px;padding:18px 19px;border:1px solid var(--krds-color-light-gray-30,#d3d6db);border-radius:12px;background:#fff;color:inherit}
.risk-next-card:hover{border-color:var(--krds-color-light-primary-50,#246beb);box-shadow:0 6px 18px rgba(36,107,235,.1)}
.risk-next-card svg{color:var(--krds-color-light-primary-60,#1c56c4)}
.risk-next-card strong{font-size:16px;line-height:1.4;word-break:keep-all}
.risk-next-card small{color:var(--krds-color-light-gray-70,#5c6169);font-size:13px;line-height:1.65;word-break:keep-all}
@media(max-width:620px){.risk-next{padding:18px}.risk-next-cards{grid-template-columns:1fr}}

/* 지도에서 자리 찍기 — 자리 분석 화면 아래쪽 */
.spot-panel { margin: 32px auto 0; max-width: 900px; padding: 24px; border: 1px solid var(--krds-gray-30, #dfe3e8); border-radius: 12px; background: #fff; }
.spot-panel h2 { margin: 0 0 8px; font-size: 20px; font-weight: 700; }
.spot-lead { margin: 0 0 20px; color: #4a5561; line-height: 1.6; }
.spot-brand { margin-bottom: 16px; }
.spot-brand label, .spot-search label { display: block; margin-bottom: 6px; font-weight: 600; font-size: 14px; }
.spot-brand input, .spot-search input { width: 100%; padding: 10px 12px; border: 1px solid #c3c9d1; border-radius: 8px; font-size: 15px; }
.spot-search-row { display: flex; gap: 8px; }
.spot-search-row input { flex: 1 1 auto; min-width: 0; }
.spot-search-row button { flex: 0 0 auto; padding: 10px 18px; border: 0; border-radius: 8px; background: #1f3a93; color: #fff; font-weight: 600; cursor: pointer; }
.spot-search-row button:disabled { background: #9aa3ad; cursor: default; }
.spot-note { margin: 6px 0 0; font-size: 13px; color: #58616a; line-height: 1.5; }
.spot-candidates { list-style: none; margin: 10px 0 0; padding: 0; border: 1px solid #dfe3e8; border-radius: 8px; overflow: hidden; }
.spot-candidates li + li { border-top: 1px solid #eef1f4; }
.spot-candidates button { display: block; width: 100%; padding: 10px 12px; border: 0; background: #fff; text-align: left; cursor: pointer; }
.spot-candidates button:hover { background: #f4f7fb; }
.spot-candidates strong { display: block; font-size: 15px; }
.spot-candidates span { display: block; margin-top: 2px; font-size: 13px; color: #58616a; }
.spot-map { margin-top: 14px; width: 100%; height: 380px; border-radius: 10px; border: 1px solid #dfe3e8; background: #eef1f4; }
.spot-picked { margin: 10px 0 0; font-size: 15px; }
.spot-lot { margin-left: 8px; font-size: 13px; color: #58616a; }
.spot-run { margin-top: 16px; width: 100%; padding: 13px; border: 0; border-radius: 8px; background: #1f3a93; color: #fff; font-size: 16px; font-weight: 700; cursor: pointer; }
.spot-run:disabled { background: #9aa3ad; cursor: default; }
.spot-fail { margin-top: 12px; padding: 12px; border-radius: 8px; background: #fdf2f2; color: #a4262c; }
.spot-result { margin-top: 22px; }
.spot-where { margin: 0 0 14px; }
.spot-where strong { margin-right: 8px; }
.spot-where span { display: block; font-size: 14px; color: #4a5561; }
.spot-rings { width: 100%; border-collapse: collapse; font-size: 15px; }
.spot-rings caption { text-align: left; font-weight: 700; padding-bottom: 8px; }
.spot-rings th, .spot-rings td { padding: 10px 8px; border-bottom: 1px solid #eef1f4; text-align: left; vertical-align: top; }
.spot-rings thead th { font-size: 13px; color: #58616a; font-weight: 600; }
.spot-rings tbody th { white-space: nowrap; }
.spot-cut { display: block; font-size: 12px; color: #a4682c; }
.spot-same { margin-top: 22px; }
.spot-same h3 { margin: 0 0 8px; font-size: 16px; font-weight: 700; }
.spot-same ul { list-style: none; margin: 0; padding: 0; }
.spot-same li { padding: 8px 0; border-bottom: 1px solid #eef1f4; }
.spot-same li strong { display: inline-block; min-width: 72px; }
.spot-same li span { display: block; font-size: 13px; color: #58616a; }
.spot-source { margin-top: 18px; font-size: 13px; color: #58616a; line-height: 1.6; }
@media (max-width: 640px) {
  .spot-panel { padding: 16px; border-radius: 0; border-left: 0; border-right: 0; }
  .spot-map { height: 300px; }
  .spot-rings { font-size: 14px; }
}

/* ───────── 움직임 ─────────
   원칙 하나: 감추는 일은 자바스크립트가 시작한 뒤에만 한다.
   CSS 에 opacity:0 을 박아 두면 스크립트가 죽거나 늦으면 글이 통째로 사라진다.
   그래서 [data-reveal] 이 붙은 것만 감춘다. 그 표시는 app/motion.tsx 가 붙인다. */
[data-reveal]{opacity:0;transform:translateY(12px);transition:opacity .5s cubic-bezier(.22,.61,.36,1),transform .5s cubic-bezier(.22,.61,.36,1);will-change:opacity,transform}
[data-reveal].is-in{opacity:1;transform:none}

/* 페이지를 열 때 한 번. 내부 링크가 통째 이동이라 이 한 겹이 전환을 부드럽게 만든다.
   위치는 안 건드리고 투명도만 만진다 — 자리가 밀리면 읽던 줄을 놓친다. */
@keyframes page-in{from{opacity:0}to{opacity:1}}
main{animation:page-in .28s ease-out both}

/* 머리글은 맨 위에서 평평하고, 내리면 살짝 뜬다. 지금 어디쯤인지가 몸으로 느껴진다. */
.site-header{transition:box-shadow .25s ease,background-color .25s ease}
.site-header.is-scrolled{box-shadow:0 6px 20px rgba(15,23,42,.16)}

/* 누를 수 있는 것은 누르는 느낌이 나야 한다. hover 만 있고 active 가 없으면
   눌렀는지 안 눌렸는지 몰라 두 번 누르게 된다. */
button:not(:disabled):active,.hero-cta:active,.partner-lead-button:active,.spot-run:active{transform:translateY(1px)}
a,button{transition:color .18s ease,background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}

/* 키보드로 다니는 사람에게 지금 어디인지 보여준다. 마우스로 누를 때는 안 나온다.
   접근성이자, 잘 만든 화면처럼 보이게 하는 것 중 값이 가장 싼 항목이다. */
:focus-visible{outline:2px solid var(--krds-color-light-primary-50,#256ef4);outline-offset:2px;border-radius:4px}
.site-header a:focus-visible{outline-color:#fff}

/* 기다리는 자리에는 글자 대신 모양을 둔다. '불러오는 중' 여섯 글자보다
   들어올 것과 같은 모양의 회색 덩어리가 기다림을 짧게 느끼게 한다. */
@keyframes skel-slide{from{background-position:200% 0}to{background-position:-200% 0}}
.skel{border-radius:8px;background:linear-gradient(90deg,#eef1f4 25%,#f7f9fb 37%,#eef1f4 63%);background-size:400% 100%;animation:skel-slide 1.4s ease-in-out infinite;color:transparent!important;user-select:none}
.skel-line{height:14px;margin:8px 0}
.skel-line.w-60{width:60%}
.skel-line.w-80{width:80%}
.skel-row{height:56px;margin:10px 0}

/* 버튼 안에서 도는 작은 표시. 버튼 글자를 '…' 로 바꾸는 것보다 자리가 안 밀린다. */
@keyframes spin{to{transform:rotate(360deg)}}
.btn-spin{display:inline-block;width:14px;height:14px;margin-right:8px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;vertical-align:-2px}

/* 카드가 손에 반응한다. 그림자만 키우면 붕 뜨므로 1px 만 올린다. */
.spot-candidates button:hover{background:#f4f7fb}
.spot-panel{transition:box-shadow .25s ease}
.spot-result{animation:page-in .3s ease-out both}

/* 움직임을 줄여 달라고 한 사람에게는 전부 끈다. 위의 reveal 은 스크립트가
   애초에 표시를 안 붙이지만, 나머지도 여기서 함께 잠근다. */
@media(prefers-reduced-motion:reduce){
  [data-reveal]{opacity:1!important;transform:none!important}
  main,.spot-result{animation:none!important}
  .skel{animation:none!important}
  .btn-spin{animation-duration:2s}
}
.compare-skeleton{margin-top:18px}
.compare-skeleton .skel-row{height:44px}

/* ───────── 자리 리포트 ─────────
   소상공인365 를 보고 고쳤다. 배운 것 넷.
     1. 해석 문장을 파란 알약으로 따로, 본문 크기로. 회색 각주로 흘리지 않는다
     2. 글자 크기는 다섯 단계만 — 12·14·16·20·32. 여덟 단계는 위계가 아니라 소음이다
     3. 모서리는 작게(4~8px), 대신 그림자를 크고 옅게. 둥글려서가 아니라 띄워서 부드럽게
     4. 색은 셋 — 파랑(사실) · 주황(눈여겨볼 것) · 회색(중립) */
.rp{
  --rp-ink:#111827;        /* 본문 */
  --rp-ink-2:#4b5563;      /* 보조 */
  --rp-ink-3:#5f6670;      /* 각주. #9ca3af 는 흰 바탕에서 2.5:1 이라 '이 리포트가 하지 않는 것' 이 휴대폰에서 잘 안 읽혔다(2026-10-03). 회색 바탕(#f4f5f6)에서도 4.5:1 넘게(scripts/check-contrast.mjs) */
  --rp-line:#eef1f4;
  --rp-blue:#0b63d6;       /* 사실 */
  --rp-blue-bg:#f2f7ff;
  --rp-amber:#b45309;      /* 눈여겨볼 것 */
  --rp-amber-bg:#fff8ed;
  --rp-flat:#e5e9ef;       /* 중립 막대 */
  --rp-shadow:0 20px 30px rgba(17,24,39,.07);
  max-width:840px;margin:0 auto;padding:0 20px 64px;
  color:var(--rp-ink);
  font-size:14px;line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
.rp b{font-weight:700}

.rp-head{padding:36px 0 24px}
.rp-print{margin:14px 0 0;min-height:40px;padding:0 14px;border:1px solid var(--rp-line,#dcdfe3);border-radius:8px;background:#fff;color:var(--rp-ink-2,#44484d);font-size:14px;font-weight:700;cursor:pointer}
.rp-print:hover{border-color:var(--krds-color-light-primary-50,#256ef4);color:var(--krds-color-light-primary-60,#0b50d0)}
.rp-head-actions{display:flex;flex-wrap:wrap;gap:8px}
.rp-head-actions .rp-print{margin-top:14px}
a.rp-review-jump{display:inline-flex;align-items:center;text-decoration:none;color:var(--krds-color-light-primary-60,#0b50d0);border-color:var(--krds-color-light-primary-50,#256ef4)}
.rp-kicker{margin:0 0 12px;color:var(--rp-blue);font-size:12px;font-weight:700;letter-spacing:.04em}
.rp-head h1{margin:0;font-size:32px;font-weight:700;line-height:1.3;letter-spacing:-.02em}
.rp-brand-line{margin:12px 0 0;font-size:16px;font-weight:700}
.rp-brand-line span{font-weight:400;color:var(--rp-ink-2)}
.rp-meta{margin:14px 0 0;font-size:12px;color:var(--rp-ink-3)}

.rp-section{padding:32px 0;border-top:1px solid var(--rp-line)}
.rp-section h2{margin:0 0 20px;font-size:20px;font-weight:700;letter-spacing:-.01em}
.rp-section h3{margin:26px 0 10px;font-size:14px;font-weight:700}
.rp-where{margin:0 0 18px;font-size:14px;font-weight:700}
.rp-where span{font-weight:400;color:var(--rp-ink-2)}
.rp-note{margin:12px 0 0;font-size:12px;line-height:1.7;color:var(--rp-ink-3)}

/* ★ 해석 문장. 이 리포트에서 가장 중요한 부품이다.
   숫자는 위에 있고, 이 한 줄이 그 숫자가 무슨 뜻인지 말한다. */
.rp-say{display:flex;gap:10px;align-items:flex-start;margin:18px 0 0;padding:14px 16px;border-radius:8px;font-size:14px;line-height:1.65}
.rp-say-mark{flex:none;display:grid;place-items:center;width:20px;height:20px;margin-top:1px;border-radius:50%;font-size:12px;font-weight:700;color:#fff}
.rp-say-fact{background:var(--rp-blue-bg);color:#123a72}
.rp-say-fact .rp-say-mark{background:var(--rp-blue)}
.rp-say-watch{background:var(--rp-amber-bg);color:#7c3d09}
.rp-say-watch .rp-say-mark{background:var(--rp-amber)}
.rp-say b{font-weight:700}

/* 반경별 점포 수 — 원 세 개 대신 가로 막대. 길이가 곧 크기다. */
.rp-bars{display:grid;gap:14px}
.rp-bar-row{display:grid;grid-template-columns:96px 1fr 74px;align-items:center;gap:14px}
.rp-bar-head b{display:block;font-size:14px;font-weight:700}
.rp-bar-head span{display:block;font-size:12px;color:var(--rp-ink-3)}
.rp-bar-track{height:22px;border-radius:4px;background:#f4f6f9;overflow:hidden}
.rp-bar-track i{display:block;height:100%;border-radius:4px;background:var(--rp-blue);transition:width .8s cubic-bezier(.22,.61,.36,1)}
.rp-bar-value{font-size:16px;font-weight:700;text-align:right;white-space:nowrap}

.rp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}
.rp-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:4px;background:#f4f6f9;font-size:12px;color:var(--rp-ink-2)}
.rp-chip b{color:var(--rp-ink);font-weight:700}

/* 이 구에서 어디쯤 */
.rp-scalewrap{margin-top:6px}
.rp-scale{position:relative;height:58px;border-radius:6px;background:#f4f6f9;overflow:hidden}
.rp-scale-band{position:absolute;top:0;bottom:0;background:#e3ebf7;transition:opacity .6s ease}
.rp-scale-mid{position:absolute;top:10px;bottom:10px;width:1px;background:#b6bfcc}
.rp-scale-me{position:absolute;top:8px;bottom:8px;width:3px;margin-left:-1.5px;border-radius:2px;background:var(--rp-blue);transition:opacity .5s ease}
.rp-scale-me span{position:absolute;top:-2px;left:50%;transform:translateX(-50%);padding:3px 8px;border-radius:4px;background:var(--rp-blue);color:#fff;font-size:12px;font-weight:700;white-space:nowrap}
.rp-scale-legend{display:flex;justify-content:space-between;margin-top:8px;font-size:12px;color:var(--rp-ink-3)}
.rp-scale-legend-mid{color:var(--rp-ink-2)}

/* 도로 위계 */
.rp-tiers{display:grid;gap:12px}
.rp-tier{display:grid;grid-template-columns:78px 1fr 96px;align-items:center;gap:14px}
.rp-tier-name{font-size:14px;color:var(--rp-ink-2)}
.rp-tier-name em{margin-left:6px;padding:2px 6px;border-radius:4px;background:var(--rp-blue);color:#fff;font-style:normal;font-size:12px;font-weight:700}
.rp-tier-track{height:16px;border-radius:4px;background:#f4f6f9;overflow:hidden}
.rp-tier-track i{display:block;height:100%;border-radius:4px;background:var(--rp-flat);transition:width .8s cubic-bezier(.22,.61,.36,1)}
.rp-tier.is-here .rp-tier-name{color:var(--rp-ink);font-weight:700}
.rp-tier.is-here .rp-tier-track i{background:var(--rp-blue)}
.rp-tier-value{font-size:12px;color:var(--rp-ink-3);text-align:right;white-space:nowrap}

/* 큰 숫자 */
.rp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:12px;margin:0 0 22px}
.rp-stat{padding:20px;border-radius:8px;background:#fff;box-shadow:var(--rp-shadow)}
.rp-stat strong{display:block;font-size:32px;font-weight:700;line-height:1.15;letter-spacing:-.02em;color:var(--rp-blue);white-space:nowrap}
.rp-stat strong span{margin-left:2px;font-size:16px}
.rp-stat.is-watch strong{color:var(--rp-amber)}
.rp-stat-label{display:block;margin-top:8px;font-size:14px;font-weight:700}
.rp-stat-hint{display:block;margin-top:2px;font-size:12px;color:var(--rp-ink-3)}

/* 층별 — 이 리포트에서 '그래서 어쩌라고' 를 가장 잘 막는 그림 */
.rp-floors{margin-top:4px}
.rp-floor{display:grid;grid-template-columns:64px 1fr;align-items:center;gap:14px;padding:8px 0}
.rp-floor.is-extra{display:none}
.rp-floors-more{margin:8px 0 4px;min-height:40px;padding:0 14px;border:1px solid var(--krds-color-light-primary-50,#256ef4);border-radius:8px;background:#fff;color:#0b50d0;font-size:14px;font-weight:600;cursor:pointer}
@media print{.rp-floor.is-extra{display:grid}.rp-floors-more{display:none}}
.rp-floor-no{font-size:14px;font-weight:700;text-align:right;color:var(--rp-ink-2)}
.rp-floor-bar{display:flex;height:24px;border-radius:4px;overflow:hidden;min-width:3px;transition:width .8s cubic-bezier(.22,.61,.36,1)}
.rp-seg{display:block;height:100%}
.rp-seg-here{background:var(--rp-blue)}
.rp-seg-gone{background:var(--rp-flat)}
.rp-floor-say{grid-column:2;margin-top:-3px;font-size:12px;color:var(--rp-ink-3)}
.rp-floor-say b{color:var(--rp-ink-2)}
.rp-floor-say em{font-style:normal;color:var(--rp-amber);font-weight:700}
.rp-legend{display:flex;gap:18px;margin-top:14px;font-size:12px;color:var(--rp-ink-3)}
.rp-legend span{display:inline-flex;align-items:center;gap:6px}
.rp-key{width:10px;height:10px;border-radius:2px}
.rp-key-here{background:var(--rp-blue)}
.rp-key-gone{background:var(--rp-flat)}

.rp-gone ul{list-style:none;margin:0;padding:0}
.rp-gone li{display:grid;grid-template-columns:52px 1fr auto;align-items:baseline;gap:14px;padding:11px 0;border-bottom:1px solid var(--rp-line);font-size:14px}
.rp-gone li b{color:var(--rp-ink-3);font-size:12px;font-weight:700}
.rp-gone li em{font-style:normal;font-size:12px;color:var(--rp-ink-3)}
.rp-gone ul.is-no-quarter li{grid-template-columns:minmax(0,1fr) auto}
.rp-gone li span{min-width:0;overflow-wrap:anywhere}
@media(max-width:620px){.rp-gone li,.rp-gone ul.is-no-quarter li{grid-template-columns:minmax(0,1fr)}.rp-gone li b:empty{display:none}.rp-gone li em{text-align:left}}

/* 브랜드 추이 */
.rp-trend svg{width:100%;height:auto;max-height:180px;overflow:visible}
.rp-trend-area{fill:#eaf1fd;transition:opacity .7s ease}
.rp-trend-line{fill:none;stroke:var(--rp-blue);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:600;transition:stroke-dashoffset 1s cubic-bezier(.22,.61,.36,1)}
.rp-trend-dot{fill:#fff;stroke:var(--rp-blue);stroke-width:2;transition:opacity .4s ease .45s}
.rp-trend-value{font-size:12px;font-weight:700;fill:var(--rp-blue);text-anchor:middle}
.rp-trend-year{font-size:12px;fill:var(--rp-ink-3);text-anchor:middle}
.rp-trend-rows{list-style:none;margin:16px 0 0;padding:0}
.rp-trend-rows li{display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:14px;padding:11px 0;border-bottom:1px solid var(--rp-line);font-size:14px}
.rp-trend-rows span{font-size:12px;color:var(--rp-ink-3)}
.rp-trend-rows strong{font-weight:700;white-space:nowrap}
.rp-trend-rows .up{color:#0b7a4b}
.rp-trend-rows .down{color:#b3261e}

/* 시도별 표 */
.rp-region-scroll{overflow-x:auto}
.rp-region table{width:100%;min-width:420px;border-collapse:collapse;font-size:14px}
.rp-region th,.rp-region td{padding:10px 8px;border-bottom:1px solid var(--rp-line);text-align:right;white-space:nowrap}
.rp-region thead th{font-size:12px;color:var(--rp-ink-3);font-weight:400}
.rp-region tbody th,.rp-region thead th:first-child{text-align:left;font-weight:700}
.rp-region-all td,.rp-region-all th{background:#f8fafc}
.rp-region .up{color:#0b7a4b;font-weight:700}
.rp-region .down{color:#b3261e;font-weight:700}

/* 같은 브랜드 최근접 — 막대가 길수록 가깝다 */
.rp-near{list-style:none;margin:0;padding:0}
/* 2026-09-30 사장님이 두 번 지적: 거리는 위 오른쪽, 이름은 아래 왼쪽으로 어긋나 있었다.
   아래 '.rp-near li span{position:relative}' 가 막대(.rp-near-bar 도 span 이다)에도 걸려, 뒤에 깔려야 할 막대가
   격자의 첫 칸을 차지했다. 거리는 둘째 칸으로 밀리고 이름은 다음 줄로 떨어졌다. 막대는 이름으로 따로 집어 늘 뒤에 깐다. */
.rp-near li{position:relative;display:grid;grid-template-columns:84px 1fr;align-items:center;gap:14px;padding:12px;border-radius:4px;font-size:16px;overflow:hidden}
.rp-near li .rp-near-bar{position:absolute;inset:0 auto 0 0;background:#f2f7ff;border-radius:4px}
.rp-near li b{position:relative;font-weight:700;color:var(--rp-blue);white-space:nowrap}
.rp-near li span:not(.rp-near-bar){position:relative;word-break:keep-all}
.rp-near-addr{display:block;margin-top:2px;font-size:14px;font-weight:400;color:#4d5562}

/* 결제 전 화면. 미리보기는 진짜로 보여 주고, 그 뒤는 숨긴 채 목차만 남긴다.
   흐리게 처리해서 가리지 않는다 — 그건 HTML 에 값이 그대로 남아 아무것도 안 가린 것이다. */
.rp-lock{max-width:760px;margin:24px auto 0;padding:22px 24px;border:1px solid #dbe3ee;border-radius:14px;background:#f6f9ff}
.rp-lock-tag{margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.04em;color:#2f6fd0}
.rp-lock h2{margin:0 0 8px;font-size:20px;font-weight:700}
.rp-lock-body{margin:0;font-size:14px;line-height:1.7;color:#4a5561}
.rp-lock-bank{display:flex;flex-direction:column;gap:3px;margin:14px 0 0;padding:14px 16px;border-radius:10px;background:#fff;border:1px solid #e3e9f2}
.rp-lock-bank b{font-size:17px;letter-spacing:-.01em}
.rp-lock-bank span{font-size:13px;color:#4a5561}
.rp-lock-bank em{font-style:normal;font-size:12px;color:#58616a}
/* 카드 결제. 계좌 안내와 같은 자리에 놓이므로 여백을 맞춘다. */
.rp-pay{margin:14px 0 0}
.rp-pay button{width:100%;padding:14px;border:0;border-radius:10px;background:#0f3b7a;color:#fff;font-size:15px;font-weight:700;cursor:pointer}
.rp-pay button:disabled{background:#b6c0cd;cursor:not-allowed}
.rp-pay-fail{margin:9px 0 0;font-size:13px;color:#a4382c}
.rp-pay-note{margin:8px 0 0;font-size:12px;color:#58616a}
.rp-lock-status{margin:12px 0 0;font-size:12px;color:#58616a}
.rp-veil{margin:34px 0 0;padding:22px 24px;border:1px dashed #cfd8e6;border-radius:14px;background:#fbfcfe}
.rp-veil h2{margin:0 0 14px;font-size:16px;font-weight:700}
.rp-veil ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.rp-veil li{display:flex;flex-direction:column;gap:2px;padding-left:20px;position:relative}
.rp-veil li::before{content:'';position:absolute;left:0;top:5px;width:11px;height:9px;border:1.5px solid #9aa7b8;border-radius:2px;border-top-width:6px;border-top-color:transparent;box-shadow:inset 0 -6px 0 -4px #9aa7b8}
.rp-veil li b{font-size:14px;font-weight:700}
.rp-veil li span{font-size:12.5px;color:#58616a}
/* 나이 피라미드. 가운데 나이대를 축으로 남녀를 양쪽으로 편다.
   세로 막대로는 '어느 나이대가 두꺼운가' 가 한눈에 안 들어온다. */
.rp-ages{margin-top:18px}
.rp-ages-head{display:grid;grid-template-columns:1fr 104px 1fr;gap:10px;margin-bottom:7px;font-size:12px;color:var(--rp-dim,#58616a)}
.rp-ages-head span:first-child{text-align:right}
.rp-age{display:grid;grid-template-columns:1fr 104px 1fr;align-items:center;gap:10px;padding:3px 0}
.rp-age em{font-style:normal;text-align:center;font-size:12px;color:var(--rp-dim,#58616a);white-space:nowrap}
.rp-age-side{display:flex;align-items:center;gap:7px;min-width:0}
.rp-age-side span{display:block;height:15px;border-radius:99px;transition:width .8s cubic-bezier(.22,.61,.36,1)}
.rp-age-side b{font-size:12px;font-weight:600;color:var(--rp-dim,#58616a);white-space:nowrap}
.rp-age-male{flex-direction:row-reverse}
.rp-age-male span{background:var(--krds-color-light-primary-50,#256ef4)}
.rp-age-female span{background:var(--krds-color-light-gray-60,#8a8f94)}
@media (prefers-reduced-motion:reduce){.rp-age-side span{transition:none}}

/* 가까운 아파트 */
.rp-apts{margin-top:24px;padding-top:20px;border-top:1px solid var(--rp-line,#eef1f4)}
.rp-apts h3{margin:0 0 8px;font-size:15px;font-weight:700}
.rp-apts-lead{margin:0 0 12px;font-size:14px;line-height:1.7;color:var(--rp-dim,#4a5561)}
.rp-apts ul{list-style:none;margin:0;padding:0;display:grid;gap:1px;background:var(--rp-line,#eef1f4);border-radius:9px;overflow:hidden}
.rp-apts li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;background:#fff;font-size:13.5px}
.rp-apts li b{font-weight:700;white-space:nowrap}
.rp-apts li em{font-style:normal;white-space:nowrap;color:#4d5562}

/* 건축물대장 */
.rp-reg-where{display:flex;flex-direction:column;gap:3px;margin:0 0 16px}
.rp-reg-where b{font-size:17px;font-weight:700;letter-spacing:-.01em}
.rp-reg-where span{font-size:12.5px;color:var(--rp-dim,#58616a)}
/* 리포트 지도. 둘레 절의 맨 위에 크게 둔다 — 숫자보다 먼저 눈에 들어와야 한다. */
.rpm{margin:4px 0 20px}
.rpm-map{width:100%;height:380px;border-radius:14px;overflow:hidden;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);background:var(--krds-color-light-gray-10,#eef1f4)}
.rpm-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px;font-size:13px;color:var(--krds-color-light-gray-70,#5b6068)}
.rpm-legend span{display:inline-flex;align-items:center;gap:6px}
.rpm-dot{display:inline-block;width:12px;height:12px;border-radius:50%}
.rpm-dot.is-mine{background:var(--krds-color-light-primary-50,#256ef4)}
.rpm-dot.is-rival{background:#d0682f}
.rpm-ring{display:inline-block;width:14px;height:14px;border-radius:50%;border:1.5px solid var(--krds-color-light-primary-50,#256ef4);background:rgba(37,110,244,.08)}
/* 지도 위 글씨. 카카오 지도는 오버레이를 문서 밖에서 그리므로 전역 이름으로 둔다. */
.rpm-ring-label{display:inline-block;padding:2px 7px;border-radius:99px;background:#fff;border:1px solid rgba(37,110,244,.5);font-size:12px;font-weight:700;color:#1b4f9c;white-space:nowrap}
.rpm-pin-label{display:inline-block;padding:1px 6px;border-radius:6px;background:#d0682f;font-size:12px;font-weight:700;color:#fff;white-space:nowrap}
@media (max-width:640px){.rpm-map{height:300px}}
/* 사이트 전체 바닥글. 사업자 정보는 PG 심사가 보는 자리라 작아도 또렷해야 한다. */
.site-footer{display:grid;gap:14px;padding:30px max(24px,calc((100% - 1180px)/2)) 40px;border-top:1px solid var(--krds-color-light-gray-30,#dfe1e5);background:#fff;color:var(--krds-color-light-gray-70,#5b6068);font-size:13px;line-height:1.7}
.site-footer-note{margin:0;max-width:78ch}
.site-footer-links{display:flex;flex-wrap:wrap;gap:6px 18px}
/* 누를 자리를 손끝만큼. 글자 높이 그대로(20px) 두었더니 80명 테스트에서 58건이 여기서 나왔다. */
.site-footer-links a{display:inline-flex;align-items:center;min-height:44px;padding:0 2px;color:var(--krds-color-light-gray-90,#1e2124);font-weight:700;text-decoration:none}
.site-footer-links a:hover{text-decoration:underline}
.site-footer-biz{display:flex;flex-wrap:wrap;gap:4px 18px;margin:0}
.site-footer-biz div{display:flex;gap:6px}
.site-footer-biz dt{color:var(--krds-color-light-gray-60,#8a8f94)}
.site-footer-biz dd{margin:0;color:var(--krds-color-light-gray-80,#33363d)}
.site-footer-copy{margin:0;font-size:12px;color:var(--krds-color-light-gray-60,#8a8f94)}
/* 반경별 업종 TOP5 — 셋을 나란히. 넓힐 때 무엇이 늘고 사라지는지 한눈에. */
.rp-rtop{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}
.rp-rtop-col{padding:14px;border:1px solid var(--rp-line,#eef1f4);border-radius:12px;background:#fff}
.rp-rtop-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin:0 0 10px}
.rp-rtop-head b{font-size:16px;font-weight:800}
.rp-rtop-head span{font-size:12px;color:var(--krds-color-light-gray-60,#8a8f94)}
.rp-rtop ol{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.rp-rtop li{display:grid;grid-template-columns:1fr auto;gap:3px 8px;font-size:13px}
.rp-rtop li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rp-rtop li b{font-weight:700;white-space:nowrap}
.rp-rtop li i{grid-column:1 / -1;display:block;height:5px;border-radius:99px;background:var(--krds-color-light-primary-50,#256ef4);opacity:.8}
/* 이 업종이 이 지역에서 얼마나 파나 — 카드 셋, 늘 위 단위와 견준다. */
.rp-mkt{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:6px 0 16px}
.rp-mkt-card{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid var(--rp-line,#eef1f4);border-radius:12px;background:#fff}
.rp-mkt-card.is-lead{border-color:var(--krds-color-light-primary-50,#256ef4);background:var(--krds-color-light-primary-5,#f0f5ff)}
.rp-mkt-card span{font-size:13px;color:var(--krds-color-light-gray-70,#5b6068)}
.rp-mkt-card strong{font-size:28px;font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.rp-mkt-card strong small{margin-left:3px;font-size:14px;font-weight:600}
.rp-mkt-card em{font-style:normal;font-size:12px;color:var(--krds-color-light-gray-60,#8a8f94)}
.rp-note-list{margin:10px 0 0;padding-left:18px;font-size:12px;line-height:1.7;color:var(--krds-color-light-gray-60,#8a8f94)}
@media (max-width:720px){.rp-rtop,.rp-mkt{grid-template-columns:1fr}}
/* A4 종이는 여백을 빼면 폭이 717px 쯤이라 위 휴대폰 규칙에 걸려 카드 셋이 세로로 쌓였다 — 한 쪽의 절반이 카드 셋이었다(2026-10-03). 종이에서는 한 줄. */
@media print{.rp-rtop,.rp-mkt{grid-template-columns:repeat(3,1fr)}}
.rp-foot{padding:30px 0 0;border-top:1px solid var(--rp-line)}
.rp-foot h3{margin:20px 0 8px;font-size:14px;font-weight:700}
.rp-foot ul{margin:0;padding-left:18px}
.rp-foot li{font-size:12px;line-height:1.8;color:var(--rp-ink-3)}

@media (max-width:640px){
  .rp{padding:0 16px 48px}
  .rp-head h1{font-size:24px}
  .rp-bar-row{grid-template-columns:78px 1fr 66px;gap:10px}
  .rp-tier{grid-template-columns:66px 1fr 78px;gap:10px}
  .rp-stat{padding:16px}
  .rp-stat strong{font-size:24px}
}

/* 숫자와 단위가 갈라져 줄바꿈되면 '44곳' 이 '44' / '곳' 으로 끊긴다. 틀이 깨져 보인다.
   숫자 안에서 끊기는 것('1,7' / '06')은 더 나쁘다 — 다른 수로 읽힌다. */
.rp-stat strong,.rp-bar-value,.rp-near li b,.rp-trend-rows strong,.rp-tier-value{white-space:nowrap;word-break:keep-all}

/* 숫자와 단위를 떼지 않는다.
   '44곳' 이 '44' / '곳' 으로 갈리고 '1,706' 이 '1,7' / '06' 으로 갈렸다.
   word-break:keep-all 은 한글끼리만 지켜 준다 — 숫자 다음 한글 사이에는
   줄바꿈 자리가 그대로 남아 있어서, 값을 담는 자리마다 따로 막아야 한다.
   틀이 깨져 보이는 것은 대개 여기다. */
.brand-fact-grid strong,.brand-move-list b,.brand-mini-stats b,.brand-mini-stats strong,
.top-value,.loc-stat-row b,.loc-stat-row strong,.plan-stats b,.plan-stats strong,
.admin-stats b,.bh-floor-num,.sf-rings td,.sf-near li b,.od-plans span,
.compare-table td,.compare-table tbody th b{white-space:nowrap;word-break:keep-all}

/* 표 안은 nowrap 이 넘칠 수 있으니 가로 스크롤을 허용한 틀 안에서만 쓴다.
   .sf-rings 의 '많은 업종' 칸은 길어서 예외로 둔다 — 거기는 줄바꿈이 맞다. */
.sf-rings td:last-child,.compare-table td.is-long{white-space:normal}

/* GNB 의 공식 카페 — 밖으로 나가는 문이라 메뉴와 생김새를 달리한다.
   같은 모양이면 사이트 안의 화면인 줄 알고 누른다. */
.site-header-cafe{display:inline-flex;align-items:center;gap:5px;margin-left:14px;padding:6px 12px;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:#fff;font-size:14px;font-weight:600;white-space:nowrap;transition:background-color .18s ease,border-color .18s ease}
.site-header-cafe:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.5)}
.site-header-cafe svg{opacity:.75}
/* .sr-only 는 위(652줄)에 이미 있다. 두 벌 두면 나중에 한쪽만 고치게 된다. */
@media (max-width:820px){.site-header-cafe{margin-left:8px;padding:5px 9px;font-size:12px}.site-header-cafe svg{display:none}}

/* 자리 찾기 — 입력 하나, 버튼 하나, 답 하나 */
.sf{max-width:900px;margin:24px auto 0;padding:26px 24px;border:1px solid var(--krds-gray-30,#dfe3e8);border-radius:12px;background:#fff}
.sf h2{margin:0 0 8px;font-size:20px;font-weight:700}
.sf-lead{margin:0 0 22px;color:#4a5561;line-height:1.65}
.sf-steps{list-style:none;margin:0;padding:0;display:grid;gap:22px}
.sf-steps>li{display:grid;grid-template-columns:30px 1fr;gap:14px;align-items:start}
.sf-step-no{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#1f3a93;color:#fff;font-size:14px;font-weight:700}
.sf-step-body h3{margin:4px 0 8px;font-size:16px;font-weight:700}
.sf-step-body h3 em{margin-left:6px;padding:2px 7px;border-radius:4px;background:#f0f3f6;color:#58616a;font-style:normal;font-size:12px;font-weight:600}
.sf-hint{margin:0 0 10px;font-size:13px;color:#58616a}
.sf-selects{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sf-selects label{display:grid;gap:6px}
.sf-selects span{font-size:13px;font-weight:600}
.sf-selects select{width:100%;height:44px;padding:0 12px;border:1px solid #c3c9d1;border-radius:8px;background:#fff;font-size:15px}
.sf-brand-filter{width:100%;height:44px;padding:0 12px;border:1px solid #c3c9d1;border-radius:8px;background:#fff;font-size:15px;color:#1e2124}
.sf-brand-filter:focus{outline:2px solid #256ef4;outline-offset:1px}
.sf-selects select:disabled{background:#f4f6f9;color:#9aa3ad}
.sf-go{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:24px;padding:14px;border:0;border-radius:8px;background:#1f3a93;color:#fff;font-size:16px;font-weight:700;cursor:pointer}
.sf-go:disabled{background:#9aa3ad;cursor:default}
.sf-spin{animation:spin .8s linear infinite}
.sf-fail{margin-top:12px;padding:12px;border-radius:8px;background:#fdf2f2;color:#a4262c}
.sf-result{margin-top:26px;animation:page-in .3s ease-out both}
.sf-where{margin-bottom:18px}
.sf-where strong{display:block;font-size:17px;font-weight:700}
.sf-where span{display:block;margin-top:2px;font-size:14px;color:#4a5561}
.sf-where small{display:block;margin-top:6px;font-size:12px;color:#58616a}
.sf-block{margin-top:26px}
.sf-block h3{margin:0 0 10px;font-size:16px;font-weight:700}
.sf-rings{width:100%;border-collapse:collapse;font-size:15px}
.sf-rings th,.sf-rings td{padding:10px 8px;border-bottom:1px solid #eef1f4;text-align:left;vertical-align:top}
.sf-rings thead th{font-size:12px;color:#58616a;font-weight:600}
.sf-rings tbody th{white-space:nowrap}
.sf-cut{display:block;font-size:12px;color:#a4682c}
.sf-near{list-style:none;margin:0;padding:0}
.sf-near li{display:grid;grid-template-columns:74px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid #eef1f4;font-size:14px}
.sf-near li b{font-weight:700;white-space:nowrap}
.sf-near li em{grid-column:2;font-style:normal;font-size:12px;color:#58616a}
.sf-none{margin:0;padding:14px;border-radius:8px;background:#f7f9fc;font-size:14px;color:#4a5561}
/* 잘렸다는 경고(.sf-cut)의 반대말. 다 봤다는 말은 따로 눈에 들어와야 값을 한다. */
/* 1단계의 두 갈래. 순서가 아니라 갈래라서 라디오로 가른다.
   KRDS 규칙대로 — 그라데이션 없이 단색, 넓은 클릭 영역, 테두리와 상태 색으로만 구분한다.
   라디오를 숨기되 초점 테두리는 라벨로 돌려준다. */
.sf-how{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}
.sf-how label{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:12px 14px;border:2px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:10px;background:#fff;font-size:15px;font-weight:600;color:var(--krds-color-light-gray-70,#5b6068);text-align:center;cursor:pointer}
.sf-how label:hover{border-color:var(--krds-color-light-gray-40,#cdd1d5);background:var(--krds-color-light-gray-5,#f7f8f9)}
.sf-how label.is-on{border-color:var(--krds-color-light-primary-50,#256ef4);background:var(--krds-color-light-primary-5,#f0f5ff);color:var(--krds-color-light-primary-70,#0b50d0)}
.sf-how label::before{content:'';flex:0 0 auto;width:18px;height:18px;border:2px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:50%;background:#fff}
.sf-how label.is-on::before{border-color:var(--krds-color-light-primary-50,#256ef4);border-width:5px}
.sf-how input{position:absolute;opacity:0;width:0;height:0}
.sf-how label:has(input:focus-visible){outline:2px solid var(--krds-color-light-primary-50,#256ef4);outline-offset:2px}
.sf-browse{border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:10px;padding:16px;background:var(--krds-color-light-gray-5,#f7f8f9)}
.sf-browse .loc-explorer,.sf-browse .loc-panel{padding:0;border:0;background:transparent}
/* 상권분석 1단계 안에 끼워 넣은 둘러보기. 단계 칸(44px) · 회색 상자 · 둘러보기 자체 여백(20px) · 고르기 상자 테두리가 겹쳐 휴대폰에서 건물 목록이 250px 로 좁았다(2026-10-03). 안쪽 겹은 걷어 낸다. */
.sf-browse .loc-wrap{padding:0}
.sf-browse .loc-controls{padding:0;border:0;background:transparent}
@media (max-width:640px){.sf-browse{margin-left:-44px;padding:14px 12px}}
/* 고른 건물을 위 흐름으로 넘기는 문. 여기서 끊기면 주소를 두 번 넣게 된다. */
.loc-use{display:inline-flex;align-items:center;gap:8px;min-height:46px;margin:10px 0 4px;padding:0 18px;border:0;border-radius:9px;background:var(--krds-color-light-primary-50,#256ef4);color:#fff;font-size:15px;font-weight:700;cursor:pointer}
.loc-use:hover{background:var(--krds-color-light-primary-60,#0b50d0)}
@media (max-width:640px){.sf-how{grid-template-columns:1fr}}

/* 로드뷰. 눌러야 열린다 — 늘 띄우면 지도와 자리를 반씩 나눠 먹고 타일도 매번 받는다. */
.spot-road{margin-top:10px}
.spot-road>button{padding:8px 14px;border:1px solid #d7dee8;border-radius:8px;background:#fff;font-size:13px;color:#33363d;cursor:pointer}
.spot-road>button:hover{background:#f7f9fc}
.spot-road-box{height:280px;margin-top:10px;border-radius:10px;overflow:hidden;background:#eef1f4}
.spot-road-fail{margin:10px 0 0;padding:12px 14px;border-radius:9px;background:#f7f9fc;font-size:13px;color:#4a5561}
.sf-sure{display:flex;gap:7px;margin:12px 0 0;padding:9px 12px;border-radius:8px;background:#eef7f0;font-size:13px;line-height:1.55;color:#1f6b3a}
.sf-sure::before{content:'✓';font-weight:700}
.sf-note{margin:10px 0 0;font-size:12px;line-height:1.6;color:#58616a}
.sf-source{margin-top:22px;font-size:12px;line-height:1.6;color:#58616a}
/* 결과 아래에 붙는 구매 유도. 위에 두면 읽기 전에 눌러 화면을 떠난다. */
/* 2026-09-29: 파란 바탕 한 문단 → 밝은 카드 + 목록. 예전 '.sf-buy span{display:block}' 이 배지까지 한 줄로 늘였다. */
.sf-buy{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px;margin-top:28px;padding:22px 24px;border:2px solid #256ef4;border-radius:14px;background:#f5f9ff;color:#1e2124}
.sf-buy-copy{flex:1 1 380px;min-width:0}
.sf-buy-copy .site-header-badge{margin:0}
.sf-buy-copy>b{display:block;margin-top:10px;font-size:19px;font-weight:800;line-height:1.4;color:#0f2d5c}
.sf-buy-copy ul{margin:12px 0 0;padding:0;list-style:none}
.sf-buy-copy li{position:relative;padding:5px 0 5px 26px;font-size:16px;line-height:1.55;color:#33363d}
.sf-buy-copy li::before{content:'✓';position:absolute;left:2px;top:5px;font-weight:800;color:#0b50d0}
.sf-buy-more{margin:10px 0 0;padding:10px 12px;border-radius:8px;background:#fff;font-size:15px;line-height:1.6;color:#33363d}
.sf-buy-act{display:flex;flex-direction:column;align-items:stretch;gap:10px;flex:0 0 auto}
.sf-buy-go{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 22px;border-radius:10px;background:#256ef4;color:#fff;font-size:17px;font-weight:700;text-decoration:none;white-space:nowrap}
.sf-buy-go b{display:inline;font-size:17px}
.sf-buy-go:hover{background:#0b50d0}
.sf-buy-sample{display:inline-flex;align-items:center;justify-content:center;min-height:44px;font-size:15px;font-weight:700;color:#0b50d0;text-decoration:underline;text-underline-offset:3px}

/* 신청 화면 */
.od{max-width:720px;margin:28px auto 0;padding:0 24px}
.od h1{margin:0 0 10px;font-size:26px;font-weight:700;letter-spacing:-.02em}
.od-lead{margin:0 0 22px;font-size:14.5px;line-height:1.75;color:#4a5561}
.od-empty{padding:18px;border-radius:10px;background:#f7f9fc;font-size:14px;color:#4a5561}
.od-spot{margin:0 0 22px;padding:16px 18px;border:1px solid #e3e9f2;border-radius:12px;background:#fbfcfe}
.od-spot div{display:flex;gap:12px;padding:4px 0}
.od-spot dt{flex:0 0 52px;font-size:12.5px;color:#58616a}
.od-spot dd{margin:0;font-size:14px;font-weight:600}
.od-form{display:grid;gap:16px}
.od-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0;padding:0;border:0}
.od-plans legend{padding:0;margin-bottom:9px;font-size:13px;font-weight:600;color:#4a5561}
.od-plans label{display:block;padding:14px;border:1.5px solid #e3e9f2;border-radius:11px;cursor:pointer;text-align:center;background:#fff}
.od-plans label.is-on{border-color:#1b5fb8;background:#f4f8ff}
.od-plans input{position:absolute;opacity:0;width:0;height:0}
.od-plans label:has(input:focus-visible){outline:2px solid #1b5fb8;outline-offset:2px}
.od-plans b{display:block;font-size:14px;font-weight:700}
.od-plans span{display:block;margin-top:4px;font-size:16px;font-weight:700;color:#1b5fb8}
.od-plans em{display:block;margin-top:2px;font-style:normal;font-size:11.5px;color:#58616a}
.od-field{display:grid;gap:6px}
.od-field>span{font-size:13px;font-weight:600;color:#4a5561}
.od-field>span em{font-style:normal;font-weight:400;font-size:11.5px;color:#58616a}
.od-field input,.od-field textarea{padding:11px 13px;border:1px solid #d7dee8;border-radius:9px;font-size:15px;font-family:inherit;color:inherit;background:#fff}
.od-field input:focus,.od-field textarea:focus{outline:2px solid #1b5fb8;outline-offset:-1px;border-color:#1b5fb8}
.od-agree{display:flex;gap:9px;align-items:flex-start;font-size:12.5px;line-height:1.65;color:#4a5561}
.od-agree input{margin-top:2px;flex:0 0 auto}
.od-fail{margin:0;padding:11px 14px;border-radius:9px;background:#fdf0ee;font-size:13.5px;color:#a4382c}
.od-go{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px;border:0;border-radius:10px;background:#0f3b7a;color:#fff;font-size:15px;font-weight:700;cursor:pointer}
.od-go:disabled{background:#b6c0cd;cursor:not-allowed}
.od-note{margin:0;font-size:12px;line-height:1.65;color:#5c6169} /* #8a94a0 은 회색 바탕에서 2.9:1 — 결제 단추 바로 밑 안심 문구가 흐렸다(2026-10-03) */
/* 만드는 동안. 서버가 진행률을 주지 않으므로 시간으로 그리되 90%를 넘기지 않는다.
   다 찬 것처럼 보이는데 안 끝나는 것이 기다림에서 제일 나쁘다. */
.od-progress{padding:20px;border:1px solid #dbe3ee;border-radius:12px;background:#f6f9ff}
.od-progress-bar{height:8px;border-radius:99px;background:#dde6f4;overflow:hidden}
.od-progress-bar span{display:block;height:100%;border-radius:99px;background:var(--krds-color-light-primary-50,#256ef4);transition:width .5s cubic-bezier(.22,.61,.36,1)}
.od-progress-stage{margin:13px 0 0;font-size:14.5px;font-weight:600;color:#0f3b7a}
.od-progress-note{margin:5px 0 0;font-size:12.5px;line-height:1.65;color:#58616a}
@media (prefers-reduced-motion:reduce){.od-progress-bar span{transition:none}}
/* 무엇을 사는지 — 값보다 먼저 온다. 무엇인지 모르는 채로 값부터 보면 비싸 보이기만 한다. */
.od-contents{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:1px;background:var(--krds-color-light-gray-30,#dfe1e5);border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:12px;overflow:hidden;counter-reset:od}
.od-contents li{display:flex;flex-direction:column;gap:3px;padding:14px 16px 14px 46px;background:#fff;position:relative}
.od-contents li::before{counter-increment:od;content:counter(od);position:absolute;left:16px;top:15px;width:20px;height:20px;border-radius:50%;background:var(--krds-color-light-primary-5,#f0f5ff);color:var(--krds-color-light-primary-60,#0b50d0);font-size:11px;font-weight:700;display:grid;place-items:center}
.od-contents li b{font-size:14.5px;font-weight:700}
.od-contents li span{font-size:12.5px;line-height:1.55;color:var(--krds-color-light-gray-60,#8a8f94)}
.od-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin:0 0 20px;padding:16px 18px;border:1px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:11px}
.od-price strong{font-size:26px;font-weight:800;letter-spacing:-.03em}
.od-price span{font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94)}
.od-go-wrap{display:grid;gap:10px}
.od-go em{display:block;margin-top:3px;font-style:normal;font-size:12.5px;font-weight:500;opacity:.85}

/* 결제 — 미리보기를 보고 사겠다고 한 사람에게만 두 칸을 묻는다. */
.rp-buy{margin:14px 0 0}
.rp-buy-go{display:inline-flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:52px;padding:14px 18px;border:0;border-radius:10px;background:var(--krds-color-light-primary-60,#0b50d0);color:#fff;font-size:16px;font-weight:700;cursor:pointer}
.rp-buy-go:hover{background:var(--krds-color-light-primary-70,#083891)}
.rp-buy-go:disabled{background:var(--krds-color-light-gray-40,#cdd1d5);cursor:not-allowed}
.rp-buy-go b{font-weight:800}
.rp-buy-note{margin:8px 0 0;font-size:12.5px;line-height:1.6;color:var(--krds-color-light-gray-60,#8a8f94)}
.rp-buy-form{display:grid;gap:14px;margin-top:14px}
.rp-buy-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.rp-buy-plans label{display:block;padding:12px 10px;border:2px solid var(--krds-color-light-gray-30,#dfe1e5);border-radius:10px;background:#fff;text-align:center;cursor:pointer}
.rp-buy-plans label.is-on{border-color:var(--krds-color-light-primary-50,#256ef4);background:var(--krds-color-light-primary-5,#f0f5ff)}
.rp-buy-plans input{position:absolute;opacity:0;width:0;height:0}
.rp-buy-plans label:has(input:focus-visible){outline:2px solid var(--krds-color-light-primary-50,#256ef4);outline-offset:2px}
.rp-buy-plans b{display:block;font-size:13px;font-weight:700}
.rp-buy-plans span{display:block;margin-top:3px;font-size:15px;font-weight:800;color:var(--krds-color-light-primary-60,#0b50d0)}
.rp-buy-plans em{display:block;margin-top:2px;font-style:normal;font-size:12px;color:var(--krds-color-light-gray-60,#8a8f94)}
.rp-buy-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.rp-buy-fields label{display:grid;gap:5px}
.rp-buy-fields span{font-size:12.5px;font-weight:600;color:var(--krds-color-light-gray-70,#5b6068)}
.rp-buy-fields input{min-height:46px;padding:11px 13px;border:1px solid var(--krds-color-light-gray-40,#cdd1d5);border-radius:9px;font-size:15px;font-family:inherit;background:#fff}
.rp-buy-fields input:focus{outline:2px solid var(--krds-color-light-primary-50,#256ef4);outline-offset:-1px}
.rp-paid{margin-top:14px}
.rp-paid h3{margin:0 0 10px;font-size:16px;font-weight:700}
@media (max-width:640px){
  .rp-buy-plans{grid-template-columns:1fr}
  .rp-buy-fields{grid-template-columns:1fr}
}
.od-done{padding:24px;border:1px solid #e3e9f2;border-radius:12px;background:#fbfcfe}
.od-done h2{margin:0 0 8px;font-size:19px;font-weight:700}
.od-done p{margin:0;font-size:14px;line-height:1.7;color:#4a5561}
.od-done-id{margin-top:12px !important;font-size:12px !important;color:#58616a !important}
@media (max-width:640px){
  .od{padding:0 16px}
  .od-plans{grid-template-columns:1fr}
  .sf-buy{flex-direction:column;align-items:stretch;gap:12px}
  .sf-buy-go{justify-content:center}
  /* 휴대폰에서는 가격·버튼이 목록과 후기 아래로 밀려 화면 하나를 넘었다(버튼까지 934px, 2026-10-02).
     제목 → 할 일 목록 → 가격·버튼 → 후기 순으로 세운다. 후기는 버튼을 누를지 망설일 때 바로 아래에서 읽힌다. */
  .sf-buy-copy{display:contents}
  .sf-buy-copy .site-header-badge{order:1;align-self:flex-start}
  .sf-buy-copy>b{order:2;margin-top:0}
  .sf-buy-copy ul{order:3;margin-top:0}
  .sf-buy-more{order:3;margin-top:0}
  .sf-buy-act{order:4}
  .sf-buy .rv-snips{order:5;margin-top:4px}
}
.loc-browse-intro{max-width:900px;margin:44px auto 0;padding:0 24px}
.loc-browse-intro h2{margin:0 0 6px;font-size:18px;font-weight:700}
.loc-browse-intro p{margin:0;color:#58616a;line-height:1.65}
@media (max-width:640px){
  .sf{margin-top:16px;padding:18px 16px;border-radius:0;border-left:0;border-right:0}
  .sf-selects{grid-template-columns:1fr}
  .sf-rings{font-size:14px}
}
/* 좁은 휴대폰(320~480px)에서 '많은 업종' 칸이 한두 글자 폭으로 좁아져 한 단어씩 줄이 바뀌었다(2026-09-30, 320px 확인).
   그 칸만 반경·개수 줄 아래로 내려 한 줄 전체를 쓰게 한다. */
@media (max-width:480px){
  .sf-rings thead th:last-child{display:none}
  .sf-rings tr{display:grid;grid-template-columns:64px 1fr 1fr;border-bottom:1px solid #eef1f4}
  .sf-rings th,.sf-rings td{border-bottom:0}
  .sf-rings tbody td:last-child{grid-column:1/-1;padding-top:0;color:#4d5562;line-height:1.6}
  .sf-rings tbody td:last-child::before{content:'많은 업종 · ';font-weight:700;color:#58616a}
}

/* 홈 "이렇게 봅니다" 단계 번호 — 11px 는 KRDS 최소(12px) 아래였다 */
.how-step>span{font-size:12px}

/* 관리자: 취소한 주문을 목록에서 지우기 — 되돌릴 수 없는 동작이라 상태 버튼과 떨어뜨리고 붉은 테두리 */
.admin-remove{display:inline-flex;align-items:center;min-height:40px;margin-top:10px;padding:0 14px;border:1px solid #c8303c;border-radius:6px;background:#fff;color:#b3261e;font-size:14px;font-weight:700;cursor:pointer}
.admin-remove:hover{background:#fdecec}
.admin-remove:focus-visible{outline:3px solid #256ef4;outline-offset:2px}
.admin-remove:disabled{opacity:.5;cursor:default}

/* /order 가격표 — PG 심사는 "판매 단가를 확인할 수 있는 경로" 를 본다. 자리 없이 들어와도 보인다 */
.od-pricelist{margin:28px 0 8px}
.od-pricelist h2{margin:0 0 10px;font-size:19px;font-weight:800}
.od-pricelist table{width:100%;border-collapse:collapse;border-top:2px solid #1d1d1d;font-size:16px}
.od-pricelist th,.od-pricelist td{padding:13px 12px;border-bottom:1px solid #d6d6d6;text-align:left}
.od-pricelist th{font-weight:700;background:#f4f5f6}
.od-pricelist td.od-pricelist-won{font-weight:800;white-space:nowrap}
.od-pricelist p{margin:10px 0 0;color:#464c53;font-size:15px;line-height:1.6}

/* 묶음 코드 — 리포트 위 안내, 결제 화면의 '코드로 열기' */
.rp-pass{box-sizing:border-box;max-width:760px;margin:24px auto 0;padding:18px 20px;border:2px solid #256ef4;border-radius:10px;background:#f4f8ff}
.rp-pass p{margin:0}
.rp-pass-tag{font-size:13px;font-weight:700;color:#1b5fb8}
.rp-pass p.rp-pass-code{margin-top:6px;font-size:17px}
.rp-pass-code b{margin-left:6px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:22px;letter-spacing:.06em}
.rp-pass p.rp-pass-left{margin-top:6px;font-size:16px}
.rp-pass p.rp-pass-how{margin-top:8px;font-size:15px;line-height:1.6;color:#33363d}
.rp-pass-go{display:inline-flex;align-items:center;min-height:44px;margin-top:12px;padding:0 18px;border-radius:8px;background:#256ef4;color:#fff;font-weight:700;text-decoration:none}
.rp-pass-go:hover{background:#1b5fb8}
.rp-pass-go:focus-visible{outline:3px solid #0b50d0;outline-offset:2px}
.rp-pass-title{margin:0 0 6px;font-size:18px;font-weight:800}
.rp-buy-alt{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;padding:0 4px;border:0;background:none;color:#1b5fb8;font-size:15px;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.rp-buy-alt:hover{color:#0b3f8a}
.rp-buy-alt:focus-visible{outline:3px solid #256ef4;outline-offset:2px}
.admin-table small.admin-pass{color:#1b5fb8;font-weight:700}
@media (max-width:800px){.rp-pass{margin-left:16px;margin-right:16px}}

/* 문의하기 */
.contact-form{display:grid;gap:18px;margin-top:20px}
.contact-types{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0}
.contact-types legend{width:100%;margin-bottom:8px;font-size:16px;font-weight:700}
.contact-types label{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1.5px solid #d6dbe1;border-radius:8px;background:#fff;font-size:15px;font-weight:600;cursor:pointer}
.contact-types label.is-on{border-color:#256ef4;background:#f4f8ff;color:#1b5fb8}
.contact-types label:has(input:focus-visible){outline:3px solid #256ef4;outline-offset:2px}
.contact-types input{position:absolute;opacity:0;width:0;height:0}
.contact-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.contact-fields label,.contact-body{display:grid;gap:6px}
.contact-fields span,.contact-body span{font-size:15px;font-weight:700}
.contact-fields em,.contact-body em{margin-left:4px;font-style:normal;font-size:13px;color:#b3261e}
.contact-fields input,.contact-body textarea{width:100%;min-height:48px;padding:10px 12px;border:1.5px solid #b8bec6;border-radius:8px;background:#fff;font-size:16px;font-family:inherit}
.contact-body textarea{line-height:1.6;resize:vertical}
.contact-fields input:focus-visible,.contact-body textarea:focus-visible{outline:3px solid #256ef4;outline-offset:1px;border-color:#256ef4}
.contact-order{margin:0;padding:12px 14px;border-radius:8px;background:#f4f5f6;font-size:15px;line-height:1.6}
.contact-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
@media (max-width:720px){.contact-fields{grid-template-columns:1fr}}

/* 관리자: 문의함 · 주문 찾기 · 링크 복사 */
.admin-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;margin-left:6px;padding:0 8px;border-radius:14px;background:#b3261e;color:#fff;font-size:15px}
.admin-inquiry-list{display:grid;gap:10px;margin:14px 0 0;padding:0;list-style:none}
.admin-inquiry-list li{padding:14px 16px;border:1px solid #d6dbe1;border-radius:8px;background:#fff}
.admin-inquiry-list li.is-handed{opacity:.6}
.admin-inquiry-head{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline;font-size:14px;color:#464c53}
.admin-inquiry-head b{font-size:15px;color:#1d1d1d}
.admin-inquiry-body{margin:8px 0 10px;white-space:pre-wrap;font-size:15px;line-height:1.6}
.admin-search{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px;margin:14px 0}
.admin-search label{display:grid;gap:4px;flex:1 1 320px}
.admin-search span{font-size:14px;font-weight:700}
.admin-search input{min-height:44px;padding:0 12px;border:1.5px solid #b8bec6;border-radius:8px;font-size:15px}
.admin-search button{min-height:44px;padding:0 18px;border:0;border-radius:8px;background:#256ef4;color:#fff;font-weight:700;cursor:pointer}
.admin-search a{display:inline-flex;align-items:center;min-height:44px;padding:0 6px}
.admin-copy{display:inline-flex;align-items:center;min-height:32px;margin-left:8px;padding:0 10px;border:1px solid #b8bec6;border-radius:6px;background:#fff;font-size:13px;font-weight:600;cursor:pointer}
.admin-copy:hover{background:#f4f5f6}

.rp-help{box-sizing:border-box;max-width:760px;margin:16px auto 0;padding:0 16px;text-align:right;font-size:15px}

/* 가격표 머리 · 샘플 링크 · 무료 요약의 마지막 숫자 */
.od-pricelist-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}
.od-pricelist-head h2{margin:0}
.od-sample{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;font-size:15px;font-weight:700;color:#1b5fb8;text-decoration:underline;text-underline-offset:3px}
.rp-hook h2{font-size:22px}

/* 프리미엄 표시 — 메뉴·상권분석 카드·결제 권유에 같은 배지 하나 */
.site-header-badge{display:inline-flex;align-items:center;height:18px;margin-left:5px;padding:0 6px;border-radius:9px;background:#1c56c4;color:#fff;font-size:12px;font-weight:700;letter-spacing:0;line-height:1;vertical-align:middle}
.site-header-nav a.is-current .site-header-badge{background:#0b3f8a}
.sf-buy b .site-header-badge,.loc-tier-price .site-header-badge{margin:0 4px 0 0}

/* 상권분석 랜딩: 무료 요약 다음에 프리미엄 — 고르는 화면이 아니라 순서다.
   상자 둘을 나란히 놓고 한쪽에 파란 테두리를 주면 바로 아래 선택 카드와 구분이 안 된다. */
.loc-tiers{max-width:900px;margin:0 auto 26px;padding:16px 20px;box-sizing:border-box;border:1px solid #e0e3e6;border-radius:14px;background:#f7f8f9}
.loc-tiers-head{margin:0 0 12px;font-size:15px;line-height:1.6;color:#464c53;word-break:keep-all}
.loc-tiers-head b{color:#1e2124}
.loc-tiers-flow{display:grid;grid-template-columns:1fr auto 1.25fr;align-items:start;gap:14px}
.loc-tier{padding:0}
.loc-tier-arrow{display:flex;align-items:center;justify-content:center;width:28px;height:28px;margin-top:22px;border-radius:50%;background:#e6e9ec;color:#5b6167}
.loc-tier h2{margin:4px 0 10px;font-size:19px;font-weight:800}
.loc-tier-price{margin:0;font-size:14px;font-weight:700;color:#5b6167}
.loc-tier.is-premium .loc-tier-price{color:#1b5fb8}
.loc-tier ul{margin:0;padding-left:18px;display:grid;gap:5px;font-size:15px;line-height:1.55;color:#33363d}
.loc-tier-links{margin:12px 0 0;font-size:15px}
.loc-tier-links a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:#1b5fb8;text-decoration:underline;text-underline-offset:3px}
@media (max-width:720px){.loc-tiers-flow{grid-template-columns:1fr}.loc-tier-arrow{margin:0;transform:rotate(90deg)}}

/* 무료 화면 끝의 다음 단계 */
.next-loc{box-sizing:border-box;max-width:1132px;margin:10px auto 34px;padding:26px 28px;border:1px solid #b9d1ff;border-radius:16px;background:#f2f6ff}
.next-loc-list{display:grid;gap:6px;margin:4px 0 12px;padding:0;list-style:none}
.next-loc-list li{position:relative;padding-left:26px;font-size:16px;line-height:1.6;color:#33363d}
.next-loc-list li::before{content:"✓";position:absolute;left:3px;top:0;font-weight:800;color:#0b50d0}
.next-loc-more{margin:0 0 18px;font-size:15px;line-height:1.6;color:#5c6169}
.next-loc-eyebrow{margin:0;font-size:14px;font-weight:700;color:#1b5fb8}
.next-loc h2{margin:6px 0 8px;font-size:24px;letter-spacing:-.03em;word-break:keep-all}
.next-loc-body{margin:0 0 14px;max-width:64ch;font-size:16px;line-height:1.7;color:#464c53;word-break:keep-all}
.next-loc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px}
.next-loc-link{display:inline-flex;align-items:center;min-height:44px;font-size:15px;font-weight:700;color:#1b5fb8;text-decoration:underline;text-underline-offset:3px}
.top-next-sub{margin:14px 0 0 !important;font-size:15px !important}
.top-next-sub a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:#1b5fb8;text-decoration:underline;text-underline-offset:3px}
@media (max-width:720px){.next-loc{margin:10px 16px 28px;padding:20px}}

/* 한 장 요약 · 반경 업종 3년 비교표 */
.rp-table-wrap{overflow-x:auto;margin:6px 0 14px}
.rp-compare{width:100%;min-width:480px;border-collapse:collapse;border-top:2px solid #1d1d1d;font-size:15px}
.rp-compare th,.rp-compare td{padding:11px 10px;border-bottom:1px solid #e1e4e8;text-align:left;vertical-align:top}
.rp-compare thead th{font-size:13px;font-weight:700;color:#464c53;background:#f4f5f6}
.rp-compare tbody th{font-weight:600;color:#1e2124}
.rp-compare td b{font-size:17px;white-space:nowrap}
/* 320px 휴대폰에서 표 최소 폭(480px) 때문에 오른쪽 칸이 반쯤 잘린 채 보였다(마포구 칸 '약 10개…' · 2026-10-02). 밀 수 있다는 표시도 없어
   잘린 숫자를 그대로 읽게 된다. 좁은 화면에서는 최소 폭을 풀고 칸 여백을 줄여 화면 안에 넣는다. */
@media (max-width:480px){.rp-compare{min-width:0}.rp-compare th,.rp-compare td{padding:9px 6px}.rp-compare td b{font-size:16px}}
.rp-summary{padding-top:8px}

.rp-note-top{margin:-4px 0 12px}

/* 관리자 미리보기 띠 — 손님 화면과 헷갈리지 않게 색을 따로 쓴다 */
.rp-admin-preview{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;max-width:960px;margin:16px auto 0;padding:12px 16px;border:1px solid #f0c36d;border-radius:10px;background:#fff8e6;color:#5c4400;font-size:14px;line-height:1.6;box-sizing:border-box}
.rp-admin-preview b{font-weight:800}
.rp-admin-preview a{display:inline-flex;align-items:center;min-height:36px;margin-left:auto;padding:0 12px;border-radius:8px;background:#5c4400;color:#fff;font-weight:700;text-decoration:none}
@media print{.rp-admin-preview{display:none}}

/* 순위 화면 맨 앞의 브랜드 폐업률 검색.
   표를 읽기 전에 '내가 아는 그 브랜드' 를 먼저 찾게 하는 칸이다. */
.top-finder{margin:18px 0 26px;padding:18px 20px;border:1px solid #cdd1d5;border-radius:12px;background:#fff;max-width:720px;box-sizing:border-box}
.top-finder-label{display:flex;align-items:center;gap:7px;margin:0 0 10px;font-size:15px;font-weight:800;color:#1e2124}
.top-finder-label svg{color:#0b50d0}
.top-finder input{width:100%;min-height:48px;padding:0 14px;border:1px solid #9fa5ab;border-radius:10px;background:#fff;font-size:16px;color:#1e2124;box-sizing:border-box}
.top-finder input:focus-visible{outline:2px solid #0b50d0;outline-offset:1px}
.top-finder-list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px}
.top-finder-list button{display:grid;grid-template-columns:1fr auto;gap:2px 12px;width:100%;padding:10px 12px;border:1px solid #dcdfe3;border-radius:10px;background:#f7f8f9;text-align:left;cursor:pointer}
.top-finder-list button:hover{border-color:#0b50d0;background:#eef4ff}
.top-finder-list b{font-size:15px;color:#1e2124}
.top-finder-list span{grid-column:1;font-size:13px;color:#55595c}
.top-finder-list em{grid-row:1 / span 2;align-self:center;font-style:normal;font-size:19px;font-weight:800;color:#0b50d0}
.top-finder-miss{margin:10px 0 0;font-size:14px;line-height:1.7;color:#55595c}
.top-finder-miss a{color:#0b50d0;text-decoration:underline;text-underline-offset:3px}
.top-finder-card{margin:12px 0 0;padding:16px;border:1px solid #9dbcf5;border-radius:12px;background:#f5f9ff}
.top-finder-card.is-watch{border-color:#f0b27a;background:#fff8ef}
.top-finder-card-head{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:flex-start;justify-content:space-between}
.top-finder-card-head strong{display:block;font-size:19px;color:#1e2124}
.top-finder-card-head span{font-size:13px;color:#55595c}
.top-finder-rate{text-align:right}
.top-finder-rate b{display:block;font-size:30px;line-height:1.1;color:#0b3f8a}
.top-finder-card.is-watch .top-finder-rate b{color:#a35a12}
.top-finder-rate span{font-size:12px;color:#55595c}
.top-finder-facts{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:6px}
.top-finder-facts li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #dde5f3;font-size:14px;color:#33363d}
.top-finder-facts li:last-child{border-bottom:0}
.top-finder-facts b{font-weight:800;color:#1e2124;white-space:nowrap}
.top-finder-say{margin:12px 0 0;font-size:14px;line-height:1.7;color:#33363d}
.top-finder-go{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
.top-finder-go a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:10px;background:#0b50d0;color:#fff;font-size:15px;font-weight:700;text-decoration:none}
.top-finder-go a + a{background:#fff;color:#0b50d0;border:1px solid #9dbcf5}
@media(max-width:620px){
  .top-finder{padding:15px 14px}
  .top-finder-rate{text-align:left}
  .top-finder-go a{flex:1 1 100%;justify-content:center}
}

/* /brands 아래의 업종별 브랜드 목록. 검색칸은 클라이언트에서 돌지만 이 목록은 서버가 그린다 —
   로봇이 브랜드 상세로 가는 유일한 길이다. 업종별로 접어 둔다: 494개를 펼쳐 놓으면 휴대폰에서
   화면이 2만 픽셀이 되고, 줄여서 넣으면 엄지로 안 눌린다. 접혀 있어도 HTML 안에는 다 있다. */
.brand-hub{max-width:1200px;margin:0 auto;padding:8px 24px 72px}
.brand-hub>h2{margin:0 0 8px;font-size:26px;letter-spacing:-.03em;color:var(--krds-color-light-gray-90,#1e2124)}
.brand-hub>p{margin:0 0 22px;max-width:70ch;font-size:15px;line-height:1.7;color:var(--krds-color-light-gray-70,#464c53);word-break:keep-all}
.brand-hub-group{border-top:1px solid var(--krds-color-light-gray-30,#d3d6db)}
.brand-hub-group summary{display:flex;align-items:center;gap:8px;min-height:52px;padding:0 4px;cursor:pointer;font-size:17px;font-weight:700;color:var(--krds-color-light-gray-90,#1e2124)}
.brand-hub-group summary:hover{color:var(--krds-color-light-primary-60,#0b50d0)}
.brand-hub-group summary small{font-size:13px;font-weight:600;color:var(--krds-color-light-gray-60,#8a8f94)}
.brand-hub-all{margin:0 0 4px;padding:0 4px}
.brand-hub-all a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:700;color:var(--krds-color-light-primary-60,#0b50d0);text-decoration:underline;text-underline-offset:3px}
.brand-hub-group ul{display:flex;flex-wrap:wrap;gap:0 16px;margin:0;padding:0 4px 12px;list-style:none}
.brand-hub-group li{display:inline-flex;align-items:center;gap:4px;min-height:44px;font-size:15px}
.brand-hub-group li a{display:inline-flex;align-items:center;min-height:44px;color:var(--krds-color-light-gray-80,#33363d);text-decoration:none}
.brand-hub-group li a:hover{color:var(--krds-color-light-primary-60,#0b50d0);text-decoration:underline}
.brand-hub-group li span{font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94)}
@media(max-width:760px){.brand-hub{padding:8px 16px 56px}}

/* 자료 출처·기준일 한 줄. 돈을 받는 근거가 자료라서, 언제 기준인지는 숨기지 않는다. */
.loc-stamp,.compare-stamp{margin:0 0 10px;font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94)}
.compare-stamp{margin:10px 0 0}

/* 추천 업종. 이 리포트에서 유일하게 '무엇을 하라' 에 가까운 절이라 조심스럽게 보이게 한다 —
   '있었다가 사라짐' 은 색을 달리해서, 빈칸과 덫이 한눈에 갈리게 둔다. */
.rp-vac-list{display:grid;gap:10px;margin:14px 0 0;padding:0;list-style:none}
.rp-vac-list li{padding:14px 16px;border:1px solid var(--krds-color-light-gray-30,#d3d6db);border-radius:12px;background:#fff}
.rp-vac-list li.is-trap{border-color:#f0c27a;background:#fffaf1}
.rp-vac-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.rp-vac-head b{font-size:17px;color:var(--krds-color-light-gray-90,#1e2124)}
.rp-vac-tag{padding:3px 8px;border-radius:99px;background:#eef1f4;color:#5b6167;font-size:12px;font-weight:700}
.rp-vac-list li.is-trap .rp-vac-tag{background:#f6e2c0;color:#8a5a12}
.rp-vac-list li.is-thin{border-color:#b9d1ff;background:#f5f9ff}
.rp-vac-list li.is-thin .rp-vac-tag{background:#dbe7ff;color:#1b4fa8}
.rp-vac-why{margin:6px 0 0;font-size:14px;line-height:1.65;color:var(--krds-color-light-gray-70,#464c53);word-break:keep-all}
.rp-vac-rule{margin:14px 0 0;border-top:1px solid var(--krds-color-light-gray-30,#d3d6db)}
.rp-vac-rule summary{display:flex;align-items:center;min-height:44px;cursor:pointer;font-size:14px;font-weight:700;color:var(--krds-color-light-primary-60,#0b50d0)}
.rp-vac-rule ul{margin:0 0 12px;padding-left:20px;display:grid;gap:6px;font-size:14px;line-height:1.65;color:var(--krds-color-light-gray-70,#464c53);word-break:keep-all}
.sf-hint-vacancy{margin-top:8px;padding:10px 12px;border-left:3px solid #256ef4;background:#f4f8ff}

/* 내 리포트 찾기. 회원가입 대신 주문할 때 받은 이름·번호로 연다. */
.find-box{max-width:640px;margin:0 auto 10px;padding:0 20px;box-sizing:border-box}
.find-form{display:grid;gap:12px;padding:20px;border:1px solid var(--krds-color-light-gray-30,#d3d6db);border-radius:14px;background:#fff}
.find-form label{display:grid;gap:6px;font-size:14px;font-weight:700;color:var(--krds-color-light-gray-70,#464c53)}
.find-form input{height:52px;padding:0 14px;border:1px solid var(--krds-color-light-gray-50,#a3a8ad);border-radius:10px;font-size:16px}
.find-form input:focus{outline:2px solid #256ef4;outline-offset:1px}
.find-form button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;border:0;border-radius:10px;background:var(--krds-color-light-primary-50,#256ef4);color:#fff;font-size:16px;font-weight:700;cursor:pointer}
.find-form button:disabled{opacity:.6;cursor:default}
.find-error{margin:10px 0 0;padding:10px 12px;border-radius:8px;background:#fdeeee;color:#c62828;font-size:14px}
.find-empty{margin:14px 0 0;font-size:15px;line-height:1.7;color:var(--krds-color-light-gray-70,#464c53);word-break:keep-all}
.find-empty a{color:var(--krds-color-light-primary-60,#0b50d0);text-decoration:underline;text-underline-offset:3px}
.find-list{display:grid;gap:12px;margin:16px 0 0;padding:0;list-style:none}
.find-list li{padding:16px 18px;border:1px solid var(--krds-color-light-gray-30,#d3d6db);border-radius:12px;background:#fff}
.find-head{display:grid;gap:3px}
.find-head b{font-size:16px;color:var(--krds-color-light-gray-90,#1e2124);word-break:keep-all}
.find-head span{font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94)}
.find-when{margin:8px 0 0;font-size:14px;color:var(--krds-color-light-gray-70,#464c53)}
.find-pass{margin:8px 0 0;padding:8px 10px;border-radius:8px;background:#f4f8ff;font-size:14px;color:#1b5fb8}
.find-gone{margin:8px 0 0;font-size:14px;color:var(--krds-color-light-gray-60,#8a8f94)}
.find-go{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;font-size:15px;font-weight:700;color:var(--krds-color-light-primary-60,#0b50d0);text-decoration:underline;text-underline-offset:3px}
.find-note{max-width:640px;margin:22px auto 60px;padding:0 20px;box-sizing:border-box}
.find-note h2{margin:0 0 10px;font-size:18px;color:var(--krds-color-light-gray-90,#1e2124)}
.find-note ul{margin:0 0 12px;padding-left:20px;display:grid;gap:6px;font-size:15px;line-height:1.7;color:var(--krds-color-light-gray-70,#464c53);word-break:keep-all}
.find-note p{margin:0;font-size:15px;color:var(--krds-color-light-gray-70,#464c53)}
.find-note a{color:var(--krds-color-light-primary-60,#0b50d0);text-decoration:underline;text-underline-offset:3px}
/* 유료 리포트의 명분. 본사 돈을 안 받으니 이용자에게 받는다 — 둘은 한 묶음으로 설명된다. */
.site-footer-stand{max-width:70ch;margin:0 0 16px;font-size:14px;line-height:1.7;color:var(--krds-color-light-gray-70,#464c53);word-break:keep-all}
.site-footer-stand b{color:var(--krds-color-light-gray-90,#1e2124)}

/* 출시 특가 배지. 정가와 받는 돈을 가격표에서 뽑아 쓴다 — 없는 할인을 지어내지 않는다. */
.rp-plan-save,.od-save{display:inline-block;padding:2px 7px;border-radius:99px;background:#d92d20;color:#fff;font-size:12px;font-weight:800;font-style:normal;letter-spacing:-.02em}
.rp-buy-plans s,.od-pricelist-won s{margin-right:6px;color:var(--krds-color-light-gray-60,#8a8f94);font-weight:500;text-decoration:line-through}
/* 가격표 세 칸(2026-09-29): 칸마다 굵은 한 줄 + 흐린 보조 한 줄. */
.od-pricelist td{vertical-align:top}
.od-pricelist-name b,.od-pricelist-won b{display:block;font-size:17px;font-weight:800;color:#1e2124}
.od-pricelist-name small,.od-pricelist-period small{display:block;margin-top:3px;font-size:15px;font-weight:500;color:#58616a}
.od-pricelist-won{white-space:normal;word-break:keep-all;font-weight:500!important}
.od-pricelist-won span{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px}
.od-pricelist-won s{margin:0;white-space:nowrap;font-size:15px}
.od-pricelist-won i{margin:0}
.od-pricelist-period{font-weight:600;color:#1e2124}
.od-terms{margin:14px 0 0;padding-left:20px;display:grid;gap:7px;font-size:15px;line-height:1.7;color:var(--krds-color-light-gray-70,#464c53);word-break:keep-all}

/* 휴대폰에서 엄지가 닿게. 44px 는 사람 손가락 굵기에서 나온 값이고, 우리 화면은 거의 휴대폰으로 열린다.
   check-mobile 이 잰 값: 순위 표 링크 24px · 업종 단추 38px · 로고 32px — 셋 다 빗나간다. */
.top-link{min-height:44px}
.directory-filter button{min-height:44px;padding-top:0;padding-bottom:0}
.site-header-logo{min-height:44px}
/* 빵부스러기도 손가락으로 누른다. 글자가 두 자면 22px 밖에 안 돼서 옆 글자를 누르게 된다. */
.brand-seo-breadcrumb a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;justify-content:center}

/* 리포트 첫 장 — 계약 전에 먼저 확인할 것(전략 v5 4장).
   절이 열셋인데 전부 같은 무게라 읽는 사람이 스스로 조립해야 했다. 조립해서 앞에 놓는다.
   할 일마다 '누구에게' 와 '근거 상태' 를 알약으로, 근거 절로 가는 링크를 붙인다. 배경은 밝게 — 짙은 칸은 다크모드로 읽힌다. */
.rp-conclusion{padding:24px 22px;border:2px solid #256ef4;border-radius:14px;background:#f7faff}
.rp-conclusion h2{margin:0 0 12px}
.rp-cond{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:baseline;margin:0 0 16px;font-size:15px;line-height:1.6;color:var(--krds-color-light-gray-80,#33363d);word-break:keep-all}
.rp-cond span{flex:none;padding:2px 8px;border-radius:6px;background:#e6efff;color:#0b3f8a;font-size:13px;font-weight:700}
.rp-asks{display:grid;gap:10px;margin:0;padding:0;list-style:none;counter-reset:ask}
.rp-asks li{position:relative;padding:12px 14px 6px 44px;border-radius:10px;background:#fff;counter-increment:ask}
.rp-asks li::before{content:counter(ask);position:absolute;left:12px;top:12px;width:22px;height:22px;border-radius:50%;background:#256ef4;color:#fff;font-size:13px;font-weight:700;line-height:22px;text-align:center}
.rp-ask-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 6px}
.rp-ask-who,.rp-ask-basis{padding:2px 8px;border-radius:999px;font-size:12.5px;font-weight:700;line-height:1.6}
.rp-ask-who{background:#fff4e5;color:#8a4b00}
.rp-ask-basis{background:#e8f5ec;color:#1f6b3a}
.rp-ask-basis.is-avg{background:#f1f3f5;color:#5a6270}
.rp-ask-text{margin:0;font-size:15px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d);word-break:keep-all}
.rp-ask-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:700;color:#0b50d0;text-decoration:none}
.rp-ask-link::after{content:'↓';margin-left:4px}
.rp-asks-none{margin:0;padding:14px 16px;border-radius:10px;background:#fff;font-size:15px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d);word-break:keep-all}
.rp-asks-sub{margin:22px 0 10px;font-size:17px;color:var(--krds-color-light-gray-90,#1e2124)}
.rp-head-note{margin:12px 0 0;font-size:13px;color:var(--krds-color-light-gray-60,#8a8f94);word-break:keep-all}
.rp-evidence th a{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-decoration:underline;text-decoration-color:#bcd0f5;text-underline-offset:3px}
.rp-evidence th small{display:block;margin-top:-6px;padding-bottom:6px;font-size:12px;font-weight:400;color:var(--krds-color-light-gray-60,#8a8f94)}
.rp-demo-note{max-width:880px;margin:16px auto 0;padding:12px 16px;border-left:4px solid #256ef4;border-radius:8px;background:#f7faff;font-size:15px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d);word-break:keep-all}
/* 첫 장 — 받은 답을 읽는 법. 초록(충분)과 주황(멈추세요) 두 줄. 밝은 배경만. */
.rp-ask-basis.is-law{background:#eef2ff;color:#3730a3}
.rp-ask-answer{display:grid;gap:6px;margin:10px 0 2px}
.rp-ask-answer>div{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:baseline;padding:8px 10px;border-radius:8px;font-size:14px;line-height:1.6;word-break:keep-all}
.rp-ask-answer dt{font-weight:700;white-space:nowrap}
.rp-ask-answer dd{margin:0;color:var(--krds-color-light-gray-80,#33363d)}
.rp-ask-answer .is-ok{background:#effaf3}.rp-ask-answer .is-ok dt{color:#1f6b3a}
.rp-ask-answer .is-stop{background:#fff5ec}.rp-ask-answer .is-stop dt{color:#9a4a00}
@media(max-width:620px){.rp-ask-answer>div{grid-template-columns:1fr}}
/* 가맹점이 한 달에 남기는 돈 — 매출 100 을 비용과 남는 돈으로 가른 띠. */
.rp-profit-bar{display:flex;height:28px;margin:18px 0 8px;border-radius:8px;overflow:hidden;background:#f1f3f5}
.rp-profit-bar i{flex-basis:0;transition:flex-grow .7s ease}
.rp-profit-bar .is-cogs,.rp-profit-legend .is-cogs i{background:#c9d4e3}
.rp-profit-bar .is-labor,.rp-profit-legend .is-labor i{background:#aebfd6}
.rp-profit-bar .is-rent,.rp-profit-legend .is-rent i{background:#8fa6c4}
.rp-profit-bar .is-other,.rp-profit-legend .is-other i{background:#dfe5ee}
.rp-profit-bar .is-profit,.rp-profit-legend .is-profit i{background:#256ef4}
.rp-profit-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 14px;padding:0;list-style:none;font-size:14px;color:var(--krds-color-light-gray-70,#464c53)}
.rp-profit-legend li{display:inline-flex;align-items:center;gap:6px}
.rp-profit-legend i{display:inline-block;width:12px;height:12px;border-radius:3px}
.rp-profit-legend .is-profit b{color:#0b3f8a}
/* 가까운 점주에게 물어볼 것 */
.rp-owner{margin-top:22px;padding:16px 18px;border-radius:12px;background:#f7faff;border:1px solid #d6e4ff}
.rp-owner h3{margin:0 0 6px;font-size:17px}
.rp-owner-lead{margin:0 0 10px;font-size:15px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d);word-break:keep-all}
.rp-owner-list{display:grid;gap:8px;margin:0 0 10px;padding-left:22px}
.rp-owner-list li{font-size:15px;line-height:1.6;word-break:keep-all}
.rp-owner-list li span{display:block;font-size:13.5px;color:var(--krds-color-light-gray-60,#6b7684)}
/* 현장에 가서 볼 것 — 인쇄해서 들고 가는 목록이라 네모 칸을 둔다. */
.rp-visit-list{display:grid;gap:10px;margin:0;padding:0;list-style:none;counter-reset:visit}
.rp-visit-list li{position:relative;padding:10px 12px 10px 44px;border-radius:10px;background:#fff;border:1px solid #e1e4e8;font-size:15px;line-height:1.7;word-break:keep-all}
.rp-visit-list li::before{content:"";position:absolute;left:14px;top:14px;width:18px;height:18px;border:2px solid #8fa6c4;border-radius:4px;background:#fff}
.rp-visit-group{margin-top:20px}
.rp-visit-group h3{margin:0 0 10px;font-size:17px;font-weight:800;color:#1e2124}
/* 묶음 전체를 한 쪽에 붙이면 제목만 앞쪽에 남는다(2026-09-30 PDF). 항목 단위로만 안 갈라지게 한다(아래 인쇄 규칙). */
/* 둘레 업종 TOP5 — 업종을 정한 사람에게는 접어 둔다. */
.rp-rtop-fold>summary{display:flex;align-items:center;min-height:44px;font-size:15px;font-weight:700;color:#0b50d0;cursor:pointer;list-style:none}
.rp-rtop-fold>summary::-webkit-details-marker{display:none}
.rp-rtop-fold>summary::before{content:"▸";margin-right:6px;transition:transform .15s}
.rp-rtop-fold[open]>summary::before{transform:rotate(90deg)}
/* 더 볼 곳 — 무료 원자료로 보내는 링크. */
.rp-more-list{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.rp-more-list li{display:flex;flex-direction:column;gap:2px}
.rp-more-list a{display:inline-flex;align-items:center;min-height:44px;font-size:16px;font-weight:700;color:#0b50d0}
.rp-more-list span{font-size:14px;line-height:1.6;color:var(--krds-color-light-gray-70,#464c53);word-break:keep-all}
/* 결제 전 제공 범위 — 이 주소의 값 / 지역 평균 / 드리지 않는 것 */
.rp-veil-group{margin:18px 0 10px;font-size:14px;font-weight:700;color:#0b3f8a}
.rp-veil-group:first-of-type{margin-top:0}
.rp-veil-no li::before{border-color:#c9ced6;box-shadow:none;border-top-width:1.5px;border-radius:50%;width:10px;height:10px}
.rp-veil-no li b{color:#58616a}
/* 근거 표는 휴대폰에서 줄마다 쌓는다. 세 칸짜리 표를 옆으로 밀어 보게 하면(480px > 311px) 50대 손님은 오른쪽 칸이 있는 줄 모른다. */
@media(max-width:620px){
.rp-evidence{min-width:0;border-top-width:1px}
.rp-evidence thead{display:none}
.rp-evidence,.rp-evidence tbody,.rp-evidence tr,.rp-evidence th,.rp-evidence td{display:block;width:auto}
.rp-evidence tr{display:grid;grid-template-columns:1fr auto;gap:0 12px;padding:8px 0;border-bottom:1px solid #e1e4e8}
.rp-evidence th,.rp-evidence td{padding:0;border:0}
.rp-evidence td:nth-of-type(1){grid-column:2;grid-row:1;align-self:center;text-align:right}
.rp-evidence td:nth-of-type(2){grid-column:1 / -1;font-size:13px;color:#58616a}
.rp-evidence td:nth-of-type(2):empty{display:none}
}
@media(max-width:620px){.rp-conclusion{padding:18px 14px}.rp-asks li{padding-left:40px;padding-right:12px}}
/* 순위 화면의 지표 정의. 숫자가 혼자 돌아다니면 사람은 제 마음대로 읽는다. */
.top-define{max-width:1000px;margin:0 auto 18px;padding:12px 14px;border-left:3px solid #256ef4;background:#f7faff;font-size:14px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d);word-break:keep-all}

/* ── 홈 둘째 화면부터: 왜 계약 전에 확인해야 하나 (랜딩 설계 최종본 2026-09-28) ──
   50~60대의 눈과 손: 본문 18px, 출처·각주 16px 진한 회색, 누르는 곳 44px 이상, 대비 4.5:1 이상.
   밝은 배경만(짙은 칸은 다크모드로 읽힌다). 파랑은 버튼과 링크에만. 빨강·경고 그림은 쓰지 않는다. */
.verification-hero h1{font-size:clamp(30px,4.2vw,46px);line-height:1.25;letter-spacing:-.04em}
.hero-source{font-size:14px;color:var(--krds-color-light-gray-60,#6b7684)}
.ld-section{max-width:880px;margin:0 auto;padding:64px 22px;border-top:1px solid var(--krds-color-light-gray-20,#e6e8ea);scroll-margin-top:72px;word-break:keep-all}
.ld-eyebrow{margin:0 0 10px;font-size:15px;font-weight:700;color:#0b50d0}
.ld-section h2{margin:0 0 18px;font-size:clamp(26px,3.2vw,34px);line-height:1.35;letter-spacing:-.03em;color:var(--krds-color-light-gray-90,#1e2124)}
.ld-section h3{margin:28px 0 12px;font-size:21px;line-height:1.4;color:var(--krds-color-light-gray-90,#1e2124)}
.ld-lead,.ld-text{margin:0 0 14px;font-size:18px;line-height:1.75;color:var(--krds-color-light-gray-80,#33363d)}
.ld-source,.ld-source-top{margin:-4px 0 18px;font-size:16px;line-height:1.6;color:var(--krds-color-light-gray-70,#464c53)}
.ld-source a{color:var(--krds-color-light-gray-70,#464c53);text-decoration:underline;text-underline-offset:3px}
.ld-cases{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:6px 0 10px}
.ld-case{padding:18px 20px;border:1px solid var(--krds-color-light-gray-30,#cdd1d5);border-radius:12px;background:#fff}
.ld-case p{margin:0 0 10px;font-size:17px;line-height:1.6;color:var(--krds-color-light-gray-80,#33363d)}
.ld-case p:last-child{margin-bottom:0}
.ld-case span{display:block;margin-bottom:2px;font-size:15px;font-weight:700;color:var(--krds-color-light-gray-60,#6b7684)}
.ld-case q{font-size:20px;font-weight:700;color:var(--krds-color-light-gray-90,#1e2124)}
.ld-action{margin:24px 0 18px;padding:20px 22px;border-left:4px solid #256ef4;border-radius:10px;background:#f7faff}
.ld-action h3{margin:0 0 12px}
.ld-action ol{margin:0 0 12px;padding-left:26px;list-style:decimal}
.ld-action li::marker{font-weight:700;color:#0b3f8a}
.ld-action li{margin-bottom:10px;font-size:18px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d)}
.ld-action li small{display:block;margin-top:4px;font-size:16px;color:var(--krds-color-light-gray-70,#464c53)}
.ld-action p{margin:0;font-size:17px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d)}
.ld-action a{color:#0b50d0;text-decoration:underline;text-underline-offset:3px}
.ld-after{margin:0 0 12px;font-size:17px;color:var(--krds-color-light-gray-80,#33363d)}
.ld-search-again{display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 22px;border:0;border-radius:10px;background:#256ef4;color:#fff;font-size:18px;font-weight:700;cursor:pointer}
.ld-search-again:focus-visible,.ld-cta:focus-visible,.ld-family button:focus-visible{outline:3px solid #0b3f8a;outline-offset:2px}
.ld-table-wrap{overflow-x:auto;margin:6px 0 10px}
.ld-table{width:100%;border-collapse:collapse;font-size:17px}
.ld-table caption{margin-bottom:8px;text-align:left;font-size:16px;color:var(--krds-color-light-gray-70,#464c53)}
.ld-table th,.ld-table td{padding:12px 10px;border-bottom:1px solid var(--krds-color-light-gray-20,#e6e8ea);text-align:right}
.ld-table thead th{font-size:15px;color:var(--krds-color-light-gray-70,#464c53);background:var(--krds-color-light-gray-5,#f4f5f6)}
.ld-table th[scope=row],.ld-table thead th:first-child{text-align:left}
.ld-table th[scope=row] small{display:block;font-size:14px;font-weight:400;color:var(--krds-color-light-gray-60,#6b7684)}
.ld-table tr.is-example{background:#f7faff}
.ld-table td b{color:#0b3f8a}
.ld-big{margin:18px 0;font-size:22px;font-weight:700;line-height:1.5;color:var(--krds-color-light-gray-90,#1e2124)}
.ld-define{margin:20px 0;padding:18px 20px;border:1px solid var(--krds-color-light-gray-30,#cdd1d5);border-radius:12px;background:#fff}
.ld-define h3{margin:0 0 10px}
.ld-define p{margin:0 0 10px;font-size:17px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d)}
.ld-define details summary{display:inline-flex;align-items:center;min-height:44px;font-size:16px;font-weight:700;color:#0b50d0;cursor:pointer}
.ld-calc{margin:20px 0;padding:20px 22px;border-radius:12px;background:#fbfbfc;border:1px solid var(--krds-color-light-gray-30,#cdd1d5)}
.ld-calc h3{margin:0 0 12px}
.ld-calc-line{display:flex;justify-content:space-between;gap:12px;margin:0;padding:10px 0;border-bottom:1px dashed var(--krds-color-light-gray-30,#cdd1d5);font-size:17px;color:var(--krds-color-light-gray-80,#33363d)}
.ld-calc-line b{font-size:24px;color:var(--krds-color-light-gray-90,#1e2124);white-space:nowrap}
.ld-calc-line.is-total b{color:#0b3f8a}
.ld-calc>p{margin:12px 0 0;font-size:17px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d)}
.ld-limits{display:grid;gap:8px;margin-top:12px}
.ld-limits p{margin:0;font-size:16px;line-height:1.65;color:var(--krds-color-light-gray-70,#464c53)}
.ld-limits b{display:block;color:var(--krds-color-light-gray-90,#1e2124)}
.ld-checks{display:grid;gap:10px;margin:8px 0 20px;padding:0;list-style:none}
.ld-checks li{padding:14px 16px;border-radius:10px;background:#fff;border:1px solid var(--krds-color-light-gray-30,#cdd1d5)}
.ld-checks b{display:block;font-size:18px;color:var(--krds-color-light-gray-90,#1e2124)}
.ld-checks span{display:block;margin-top:4px;font-size:16px;line-height:1.65;color:var(--krds-color-light-gray-70,#464c53)}
.ld-cta{display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 22px;border-radius:10px;background:#256ef4;color:#fff;font-size:18px;font-weight:700;text-decoration:none}
.ld-cta.is-ghost{background:#fff;color:#0b50d0;border:1px solid #256ef4}
.ld-cta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.ld-family{margin-top:28px;padding:18px 20px;border-radius:12px;background:#f7faff;border:1px solid #d6e4ff}
.ld-family h3{margin:0 0 10px}
.ld-family pre{margin:0 0 12px;white-space:pre-wrap;font-family:inherit;font-size:17px;line-height:1.75;color:var(--krds-color-light-gray-80,#33363d)}
.ld-family button{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 16px;border:1px solid #256ef4;border-radius:8px;background:#fff;color:#0b50d0;font-size:16px;font-weight:700;cursor:pointer}
.ld-list{margin:0 0 16px;padding-left:24px;list-style:disc}
ol.ld-list{list-style:decimal}
.ld-list li{margin-bottom:8px;font-size:18px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d)}
.ld-list.is-plain{padding-left:22px;list-style:disc}
.ld-price{margin:24px 0;padding:20px 22px;border-radius:12px;background:#fff;border:1px solid var(--krds-color-light-gray-30,#cdd1d5)}
.ld-price h3{margin:0 0 10px}
.ld-price p{margin:0 0 10px;font-size:17px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d)}
.ld-price a,.ld-text a,.ld-faq a{color:#0b50d0;text-decoration:underline;text-underline-offset:3px}
.ld-faq{margin:0}
.ld-faq>div{padding:16px 0;border-bottom:1px solid var(--krds-color-light-gray-20,#e6e8ea)}
.ld-faq dt{font-size:19px;font-weight:700;line-height:1.5;color:var(--krds-color-light-gray-90,#1e2124)}
.ld-faq dd{margin:8px 0 0;font-size:17px;line-height:1.75;color:var(--krds-color-light-gray-80,#33363d)}
.ld-end-search{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin:28px 0}
.ld-link{display:inline-flex;align-items:center;min-height:44px;font-size:17px;color:#0b50d0;text-decoration:underline;text-underline-offset:3px}
.ld-correction{padding:16px 18px;border-left:4px solid var(--krds-color-light-gray-40,#b1b8be);border-radius:8px;background:var(--krds-color-light-gray-5,#f4f5f6)}
.ld-correction strong{font-size:17px}
.ld-correction p{margin:6px 0;font-size:16px;line-height:1.6;color:var(--krds-color-light-gray-70,#464c53)}
.ld-correction a{display:inline-flex;align-items:center;min-height:44px;font-size:16px;font-weight:700;color:#0b50d0}
@media(max-width:620px){
.verification-hero h1{font-size:30px}
.ld-section{padding:48px 18px}
.ld-cases{grid-template-columns:1fr}
.ld-calc-line{flex-direction:column;gap:2px}
.ld-cta,.ld-search-again{width:100%;justify-content:center}
.ld-table{font-size:15px}
.ld-table th,.ld-table td{padding:10px 5px}
.ld-table td{white-space:nowrap}
.ld-table thead th{font-size:13px}
}
.ld-copy-note{min-height:0;margin:10px 0 0;font-size:16px;line-height:1.6;color:var(--krds-color-light-gray-80,#33363d)}
.ld-copy-note:empty{display:none}

/* 비교 화면 — 영업이익·가맹점주 질문 (2026-09-29) */
.compare-profit b{color:#0b3f8a}
.compare-owner ol{margin:4px 0 10px;padding-left:24px;list-style:decimal}
.compare-owner li{margin-bottom:8px;font-size:17px;line-height:1.7;color:var(--krds-color-light-gray-80,#33363d)}
.top-profit .ld-table-wrap{margin-top:8px}
.top-profit .top-baseline a{color:#0b50d0;text-decoration:underline;text-underline-offset:3px}

/* ── 글자 바닥 14px (2026-09-29, scripts/check-font-size.mjs) ──
   50~60대가 돋보기 없이 읽게. 본문 18px·출처 16px 이 기준이고, 어떤 글자도 14px 밑으로 내리지 않는다.
   옛 스타일 곳곳의 12~13px 을 여기서 한꺼번에 올린다. 새 규칙을 쓸 때도 14px 밑으로 쓰지 말 것. */
.site-footer-links a,.site-footer-biz dt,.site-footer-biz dd,.site-footer-note,.site-footer-copy{font-size:15px!important;line-height:1.6}
.brand-seo-breadcrumb,.brand-seo-breadcrumb a,.brand-seo-breadcrumb span{font-size:15px!important}
.site-header-badge{font-size:14px!important}
.site-header-nav a,.site-header-cafe{font-size:15px!important}
.directory-eyebrow,.hero-preview-label,.radar-demo-hint,.compare-hint,.compare-reset,.directory-filter button,.directory-notice strong,.directory-card span,.brand-hub-group small{font-size:15px!important}
.spot-note,.sf-hint,.sf-selects span,.od-note,.od-note a,.od-agree span,.od-pricelist-won s,.od-save,.contact-fields em,.contact-body em{font-size:15px!important}
.top-flag,.top-value small,.top-value small.up,.top-value small.down{font-size:14px!important}
.ld-table thead th{font-size:15px}
.rp-note,.rp-foot li,.rp-stat-hint,.rp-ask-who,.rp-ask-basis,.rp-mkt-card span,.rp-mkt-card em,.rp-age em,.rp-age-side b,.rp-compare small,.rp-compare th,.rp-compare td{font-size:15px!important}
.rpm-legend span,.rp-trend-rows span,.rp-reg-where span,.rp-owner-list span,.rp-legend span,.rp-cond span,.rp-bar-head span,.rp-meta,.rp-kicker,.rp-head-note,.rp-note-list li,.rp-gone em,.rp-floor-say,.rp-floor-say em,.directory-notice span{font-size:15px!important}
@media(max-width:620px){.od-pricelist th,.od-pricelist td{padding:12px 6px}.od-pricelist-won{min-width:80px}.od-pricelist-won s{font-size:14px!important}.brand-seo-breadcrumb{flex-wrap:wrap}.brand-seo-breadcrumb a{flex:none}}
.compare-table th small,.compare-table td small,.compare-verdict-guard,.compare-head-tag,.compare-table thead small{font-size:15px!important}
.trust-screen-heading a,.trust-screen-heading p,.trust-screen-callout p,.trust-screen-callout small,.trust-screen-row small,.trust-screen-row strong,.trust-screen-row b,.top-go,.data-source-summary span,.data-source-summary b,.risk-legend li,.risk-scope,.risk-next-card small,.brand-seo-eyebrow,.brand-fact-grid small,.brand-fact-grid span,.brand-seo-trust small,.brand-keyword-panel span,.brand-move-list span,.compare-table th{font-size:15px!important}
.hero-source{white-space:nowrap}

/* ── 리포트 첫 장: 이 자리 한눈에 + 꼭! 알아두세요 (2026-09-29) ── */
.rp-glance{display:grid;gap:10px;margin:0 0 6px;padding:0;list-style:none;counter-reset:fact}
.rp-glance li{position:relative;padding:14px 16px 4px 48px;border-radius:10px;background:#fff;counter-increment:fact}
.rp-glance li::before{content:counter(fact);position:absolute;left:14px;top:15px;width:24px;height:24px;border-radius:50%;background:#256ef4;color:#fff;font-size:14px;font-weight:700;line-height:24px;text-align:center}
.rp-glance p{margin:0;font-size:17px;line-height:1.75;color:var(--krds-color-light-gray-90,#1e2124);word-break:keep-all}
.rp-glance b{color:#0b3f8a}
.rp-tips-title{margin:24px 0 10px;font-size:19px;color:var(--krds-color-light-gray-90,#1e2124)}
.rp-tips{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.rp-tips li{padding:14px 16px;border-left:4px solid #e08a00;border-radius:10px;background:#fffaf2}
.rp-tips li.is-law{border-left-color:#3730a3;background:#f5f6ff}
.rp-tips p{margin:0;font-size:17px;line-height:1.75;color:var(--krds-color-light-gray-90,#1e2124);word-break:keep-all}
.rp-tips .rp-tip-stop{margin-top:8px;font-size:15px;line-height:1.65;color:var(--krds-color-light-gray-80,#33363d)}
.rp-tip-stop b{display:block;color:#8a4b00}
.rp-evidence-fold{margin-top:18px}
.rp-evidence-fold summary{display:inline-flex;align-items:center;min-height:44px;font-size:16px;font-weight:700;color:#0b50d0;cursor:pointer}
@media print{.rp-evidence-fold{display:block}.rp-evidence-fold summary{display:none}}
/* 접힌 절을 종이에서 펼친다. 위 규칙(display:block)만으로는 닫힌 details 의 안이 안 찍혔다 — '숫자의 범위와 출처'·'반경별로 많은 업종 다섯'·'어떤 기준으로 골랐나' 가 빈 채로 나갔다(2026-10-04). 옛 브라우저는 report-view 의 beforeprint 가 연다. */
@media print{.rp-evidence-fold::details-content,.rp-rtop-fold::details-content,.rp-vac-rule::details-content{content-visibility:visible;display:contents}.rp-rtop-fold>summary::before{content:none}}
/* 업종 다섯 카드가 쪽 끝에서 갈렸다 — 머리('300m 761곳')만 앞 쪽에, 다섯 줄은 다음 쪽에 찍혀 빈 카드 셋이 나갔다(2026-10-05 대구 동성로). 카드째로 넘기고, 제목은 카드와 붙여 둔다. */
@media print{.rp-rtop,.rp-rtop-col{break-inside:avoid}.rp-rtop-fold>summary{break-after:avoid}}

.rp-conclusion .rp-tips-title{margin:26px 0 12px;font-size:20px;font-weight:800;color:#8a4b00}

/* 2026-09-29 사장님: "깨진다". 80px 동그라미에 '자료 모두 있음' 이 안 들어가 밖으로 넘쳤다 → 글자 길이만큼 늘어나는 알약.
   자료 칩은 체크가 혼자 한 줄을 먹고 '브랜드·매출공정위 2025년 공시' 로 붙어 보였다 → 한 줄, 사이 띄움. */
.risk-verdict-mark{width:auto!important;height:auto!important;min-height:44px;padding:8px 18px;border-radius:99px;white-space:nowrap;text-align:center;flex:none}
.data-source-summary span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.data-source-summary span svg{flex:none}
.data-source-summary b{margin-right:4px}
@media(max-width:620px){.data-source-summary span{white-space:normal}}

/* 브랜드 비교: A·B 를 이름이나 업종으로 찾는 칸(2026-09-29). */
.compare-field>label{display:flex;align-items:center;gap:8px;color:var(--krds-color-light-gray-80,#33363d);font-size:15px;font-weight:700}
.compare-field>label em{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:var(--krds-color-light-primary-50,#246beb);color:#fff;font-size:13px;font-style:normal;font-weight:800}
.compare-search{position:relative}
.compare-search-box{position:relative;display:flex;align-items:center}
.compare-search-box>svg{position:absolute;left:13px;color:#8a8f94;pointer-events:none}
.compare-field .compare-search-box input{height:52px;padding:0 42px 0 40px;font-size:16px}
.compare-search-clear{position:absolute;right:6px;display:grid;place-items:center;width:40px;height:40px;border:0;background:none;color:#58616a;cursor:pointer}
.compare-search-list{position:absolute;z-index:30;top:calc(100% + 6px);left:0;right:0;max-height:360px;overflow:auto;padding:6px;border:1px solid #c1c5cc;border-radius:12px;background:#fff;box-shadow:0 12px 32px rgba(15,35,70,.14)}
.compare-search-item{display:block;width:100%;min-height:52px;padding:9px 12px;border:0;border-radius:9px;background:none;text-align:left;cursor:pointer}
.compare-search-item:hover,.compare-search-item:focus-visible{background:#f0f5ff;outline:0}
.compare-search-item:disabled{opacity:.45;cursor:not-allowed}
.compare-search-item b{display:block;font-size:16px;font-weight:700;color:#1e2124}
.compare-search-item small{display:block;margin-top:2px;font-size:14px;color:#58616a}
.compare-search-item.is-category b{color:#1c56c4}
.compare-search-group{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 12px 2px;font-size:14px;font-weight:700;color:#58616a}
.compare-search-group button{min-height:36px;padding:0 10px;border:1px solid #c1c5cc;border-radius:8px;background:#fff;font-size:14px;font-weight:700;color:#33363d;cursor:pointer}
.compare-search-note{margin:10px 12px;font-size:15px;color:#58616a}
.compare-picked{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:8px 8px 8px 14px;border:2px solid #246beb;border-radius:10px;background:#f5f9ff}
.compare-picked>div{min-width:0}
.compare-picked b{display:block;font-size:17px;font-weight:800;color:#0f2d5c;overflow-wrap:anywhere}
.compare-picked small{display:block;margin-top:2px;font-size:14px;color:#5c6169}
.compare-picked button{flex:none;min-height:40px;padding:0 14px;border:1px solid #c1c5cc;border-radius:8px;background:#fff;font-size:15px;font-weight:700;color:#33363d;cursor:pointer}
.compare-pair{align-items:start}
.compare-pair .compare-versus{margin-top:34px}
.compare-mixed{margin:0;padding:14px 18px;border-left:4px solid #e08a00;border-radius:0 10px 10px 0;background:#fff8ec;font-size:16px;line-height:1.65;color:#33363d}
.compare-mixed b{color:#8a4b00}
@media(max-width:620px){.compare-pair .compare-versus{margin-top:0}}

/* '누가 사나' 결론 먼저(2026-09-29) */
.rp-people-lead{margin:4px 0 18px;padding:16px 18px;border-left:4px solid #256ef4;border-radius:0 12px 12px 0;background:#f5f9ff}
.rp-people-lead p{margin:0;font-size:17px;line-height:1.7;color:#1e2124;word-break:keep-all}
.rp-people-lead p+p{margin-top:6px}
.rp-ages-title{margin:22px 0 4px;font-size:16px;font-weight:800;color:#33363d}

/* 반경 안 사라진 같은 업종 가게 목록(2026-09-29) */
.rp-gonenear-list{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}
.rp-gonenear-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 12px;padding:12px 14px;border:1px solid #e1e4e8;border-radius:10px;background:#fff}
.rp-gonenear-list b{font-size:16px;font-weight:700;color:#1e2124;overflow-wrap:anywhere}
.rp-gonenear-list span{font-size:15px;color:#5c6169;text-align:right;white-space:nowrap}
.rp-gonenear-list em{grid-column:1/-1;font-style:normal;font-size:15px;color:#8a4b00}
@media(max-width:620px){.rp-gonenear-list li{grid-template-columns:1fr}.rp-gonenear-list span{text-align:left}}

/* 인쇄에서는 움직임을 끈다(2026-09-29). 막대가 0.8초에 걸쳐 늘어나는 도중에 찍히면 폭 0 으로 나온다. */
@media print{*,*::before,*::after{transition:none!important;animation:none!important}}

/* 인쇄에서 갈라지지 않게(2026-09-30 실제 사이트 PDF 확인): 자료 출처 마지막 한 줄이 16쪽을 혼자 차지했고,
   '누가 사나' 결론 상자가 두 쪽으로 갈렸다. */
@media print{.rp-foot,.rp-people-lead,.rp-ages,.rpm,.rpm-map,.rp-gonenear-list li,.rp-visit-list li,.rp-tips li{break-inside:avoid}.rp-ages-title,.rp-visit-group h3,.rp-section h2{break-after:avoid;page-break-after:avoid}}

/* 건물의 사라진 가게: 이름 아래에 업종·층·버틴 기간(2026-09-30) */
.rp-gone ul.is-no-quarter li{grid-template-columns:minmax(0,1fr)!important;gap:2px}
.rp-gone ul.is-no-quarter li span{font-weight:700;color:#1e2124}
.rp-gone ul.is-no-quarter li em{text-align:left}
.rp-gone-when,.rp-gone li b.rp-gone-when{font-size:15px!important;font-weight:600;color:#8a4b00}

/* 후보 자리 나란히 보기(2026-09-30) */
.spots{max-width:1132px;margin:0 auto;padding:28px 20px 48px}
.spots h1{margin:0 0 10px;font-size:30px;letter-spacing:-.03em}
.spots-lead{margin:0 0 18px;font-size:17px;line-height:1.7;color:#33363d;word-break:keep-all}
.spots-empty,.spots-warn{margin:0 0 16px;padding:14px 18px;border-radius:10px;font-size:16px;line-height:1.65}
.spots-empty{border:1px dashed #c1c5cc;color:#5c6169}
.spots-warn{border-left:4px solid #e08a00;background:#fff8ec;color:#33363d}
.spots-skipped{margin:0 0 14px;padding-left:20px;font-size:15px;color:#b32b25}
.spots-wrap{overflow-x:auto;border:1px solid #d6dbe1;border-radius:12px;background:#fff}
.spots-table{width:100%;min-width:720px;border-collapse:collapse;font-size:16px}
.spots-table th,.spots-table td{padding:14px 14px;border-bottom:1px solid #e5e8ec;text-align:left;vertical-align:top;word-break:keep-all}
.spots-table thead th{background:#f5f9ff}
.spots-table thead th b{display:block;margin-top:6px;font-size:16px;line-height:1.45}
.spots-table thead th small{display:block;margin-top:3px;font-size:15px;font-weight:500;color:#5c6169}
.spots-tag{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:7px;background:#246beb;color:#fff;font-size:15px;font-weight:800}
.spots-open{display:inline-flex;align-items:center;min-height:40px;margin-top:6px;font-size:15px;font-weight:700;color:#1b5fb8}
.spots-table tbody th{width:28%;font-weight:700;color:#1e2124}
.spots-table tbody th small{display:block;margin-top:4px;font-size:15px;font-weight:500;color:#58616a;line-height:1.55}
.spots-table tbody td{font-weight:600;color:#1e2124}
.spots-table tr.is-gap th,.spots-table tr.is-gap td{background:#fffaf1}
.spots-gap{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:99px;background:#e08a00;color:#fff;font-size:14px;font-weight:800;vertical-align:1px}
.spots-note{margin:14px 0 0;font-size:15px;line-height:1.65;color:#58616a}
.spots-legend,.spots-cards{display:none}
@media (max-width:640px){
  .spots-wrap{display:none}
  .spots-legend{display:grid;gap:10px;margin:0 0 14px;padding:14px 16px;list-style:none;border:1px solid #d6dbe1;border-radius:12px;background:#f5f9ff}
  .spots-legend li{display:grid;grid-template-columns:26px 1fr;gap:10px;align-items:center;font-size:16px;line-height:1.5;word-break:keep-all}
  .spots-legend a{display:inline-flex;align-items:center;min-height:40px;font-size:15px;font-weight:700;color:#1b5fb8}
  .spots-cards{display:grid;gap:12px}
  .spots-card{padding:16px;border:1px solid #d6dbe1;border-radius:12px;background:#fff}
  .spots-card.is-gap{background:#fffaf1;border-color:#f0d3a0}
  .spots-card h2{margin:0;font-size:17px;line-height:1.5;color:#1e2124;word-break:keep-all}
  .spots-card>p{margin:4px 0 10px;font-size:15px;line-height:1.55;color:#58616a;word-break:keep-all}
  .spots-card dl{display:grid;gap:8px;margin:0}
  .spots-card dl div{display:grid;grid-template-columns:26px 1fr;gap:10px;align-items:center}
  .spots-card dd{margin:0;font-size:16px;font-weight:600;color:#1e2124}
}
.find-compare{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding:14px 16px;border:2px solid #b9d1ff;border-radius:12px;background:#f5f9ff}
.find-compare p{margin:0;flex:1 1 280px;font-size:16px;line-height:1.6}
.find-compare-go{display:inline-flex;align-items:center;min-height:48px;padding:0 18px;border-radius:10px;background:#246beb;color:#fff;font-size:16px;font-weight:700;text-decoration:none}
.find-compare-go.is-off{background:#c1c5cc;pointer-events:none}
.find-pick{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-bottom:4px;font-size:15px;font-weight:700;color:#1b5fb8;cursor:pointer}
.find-pick input{width:22px;height:22px}
@media print{.spots-wrap{display:block!important;overflow:visible;border:0}.spots-table{min-width:0}.spots-open,.spots-legend,.spots-cards{display:none!important}}

/* 무료 상권 요약 결과(찾아보기를 누른 뒤에 뜨는 부분)의 12~13px 글자를 14px 로.
   check-font-size 는 처음 뜬 화면만 재서 이 부분을 못 봤다(2026-09-30, 320px 폰으로 직접 눌러 보다 찾음). */
.sf-result .sf-where small,.sf-result .sf-note,.sf-result .sf-sure,.sf-result .sf-source,
.sf-result .sf-rings thead th,.sf-result .sf-near li em,
.sf-result .bh-caveat,.sf-result .bh-floors-note,.sf-result .bh-floor-num small,.sf-result .bh-list li span,
.spot-picker .spot-lot,.spot-picker .spot-road button{font-size:14px}

/* 같은 브랜드 매장에서 직접 세어 볼 것(2026-09-30 다시 씀) — 작은 제목과 '물어볼 것' 세 줄 */
.rp-owner-list li b{display:block;font-size:16px}
.rp-owner-list li span{margin-top:2px;line-height:1.65}
.rp-owner-sub{margin:16px 0 4px;font-size:16px;font-weight:700;color:#1e2124}
.rp-owner-ask{display:grid;gap:4px;margin:0 0 10px;padding-left:22px;list-style:disc;font-size:16px;line-height:1.6;word-break:keep-all}

/* 인쇄: 숫자 칸이 두 쪽으로 갈리지 않게(2026-10-01 인쇄본에서 '공시 창업비를 되찾는 데' 제목은 8쪽, '약 3.6년' 은 9쪽이었다).
   칸 하나는 한 쪽보다 작아서 통째로 다음 쪽으로 넘긴다. */
@media print{.rp-mkt-card,.rp-stat,.rp-say,.rp-glance>li,.rp-near li,.rp-owner-list li,.rp-owner-ask,.rp-trend-rows>*,.rp-vac-list li{break-inside:avoid;page-break-inside:avoid}}

/* 첫 화면 후기 띠(app/review-marquee.tsx). 두 줄이 서로 반대로 40초에 한 바퀴. 글자는 14px 아래로 내리지 않는다. */
.rv-section{overflow:hidden}
.rv-section h2{margin:0 0 18px}
.rv-sr-list{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:-1px;padding:0;border:0}
.rv-marquee{display:grid;gap:12px;margin:0 -20px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.rv-viewport{overflow:hidden}
.rv-track{display:flex;gap:10px;width:max-content;margin:0;padding:2px 0;list-style:none;animation:rv-left 40s linear infinite}
.rv-track.is-right{animation-name:rv-right}
.rv-viewport:hover .rv-track,.rv-viewport:focus-within .rv-track{animation-play-state:paused}
@keyframes rv-left{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes rv-right{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.rv-card{flex:none;width:260px;padding:14px 16px;border:1px solid var(--krds-color-light-gray-20,#e5e8ec);border-radius:14px;background:#fff}
.rv-card p{margin:6px 0 0;font-size:14px;line-height:1.6;color:var(--krds-color-light-gray-80,#33363d);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:keep-all}
.rv-card small{display:block;margin-top:6px;font-size:14px;color:var(--krds-color-light-gray-60,#6b7684)}
/* 후기 별: 노랑 #f5b301 은 흰 바탕에서 1.9:1(운영 check-contrast, 2026-10-06 — 운영에만 공개 후기가 있어 로컬에선 안 잡혔다). 짙은 호박색 5.1:1. 점수는 aria-label 로도 읽힌다. */
.rv-stars{font-size:14px;letter-spacing:1px;color:#9a6200}
.rv-stars i{font-style:normal;color:#dfe1e5}
@media (prefers-reduced-motion:reduce){.rv-track{animation:none}.rv-viewport{overflow-x:auto}}
@media print{.rv-section{display:none}}

/* 상권분석 결제 상자 안 짧은 후기(app/review-marquee.tsx ReviewSnippets) */
.rv-snips{margin-top:16px;padding-top:14px;border-top:1px solid #d6e4ff}
.rv-snips>b{display:block;font-size:15px;margin-bottom:8px;color:#1e2124}
.rv-snips ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.rv-snips li{padding:10px 12px;border-radius:10px;background:#fff;border:1px solid #e5e8ec}
.rv-snips li p{margin:4px 0 0;font-size:14px;line-height:1.6;color:#33363d;word-break:keep-all}
.rv-snips li small,.rv-snips-note{display:block;margin-top:4px;font-size:14px;color:#58616a}
.rv-snips-note{margin-top:8px}
/* 결제 상자의 목록(✔ 표시) 규칙이 후기 칸에도 걸렸다 — 후기에는 표시를 끄고 여백을 되돌린다. */
.sf-buy .rv-snips li{padding:10px 12px;display:block}
.sf-buy .rv-snips li::before{content:none;display:none}
/* 휴대폰에서는 결제 상자의 후기가 버튼을 한참 밀어냈다(긴 후기 셋 · 2026-10-02). 둘만, 세 줄까지만 보인다. PC 는 버튼이 옆 칸이라 그대로. */
@media (max-width:720px){.sf-buy .rv-snips li:nth-child(n+3){display:none}.sf-buy .rv-snips li p{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}}

/* 결제한 리포트 맨 아래 '후기 남기기'(app/report/review-form.tsx) */
.rp-review-form{margin-top:8px}
.rp-review-stars{display:flex;gap:6px;margin:6px 0 12px}
.rp-review-stars button{width:44px;height:44px;border:1px solid #dfe1e5;border-radius:10px;background:#fff;font-size:24px;line-height:1;color:#dfe1e5;cursor:pointer}
.rp-review-stars button.is-on{color:#f5b301;border-color:#f5d36b;background:#fffaf0}
.rp-review-label{display:block;margin-bottom:6px;font-size:15px;font-weight:700}
.rp-review-form textarea{width:100%;box-sizing:border-box;padding:12px;border:1px solid #c6cbd1;border-radius:10px;font:inherit;font-size:16px;line-height:1.6;resize:vertical}
.rp-review-agree{display:flex;gap:8px;align-items:flex-start;margin:12px 0;font-size:14px;line-height:1.6;color:#33363d;cursor:pointer}
.rp-review-message{margin:0 0 10px;font-size:14px;color:#c0392b}
.rp-review-send{min-height:48px;padding:0 22px;border:0;border-radius:10px;background:#256ef4;color:#fff;font-size:16px;font-weight:700;cursor:pointer}
.rp-review-send:disabled{opacity:.6;cursor:default}
@media print{.rp-review-form{display:none}}

/* 관리자 '후기' 칸(app/admin/admin-reviews.tsx). 처음엔 모양을 안 넣어 테두리 없는 입력칸과 제목이 한 줄에 엉켜 있었다(2026-10-01 사장님 "너무 깨진다").
   다른 관리자 입력칸(검색·답장 초안)과 같은 테두리·크기로 맞춘다. 칸 하나에 제목 한 줄, 그 아래 입력. */
.admin-review-new{margin:14px 0 18px;padding:18px 20px;border:1px solid #dfe1e5;border-radius:12px;background:#fff}
.admin-review-new h3{margin:0 0 6px;font-size:17px;color:#1e2124}
.admin-review-form{display:block}
.admin-review-form>label,.admin-review-row>label{display:block;margin:14px 0 0;font-size:14px;font-weight:700;color:#1e2124}
.admin-review-form label small{display:inline;margin-left:8px;font-size:13px;font-weight:400;color:#8a8f94}
.admin-review-form textarea,.admin-review-form input,.admin-review-form select{display:block;width:100%;box-sizing:border-box;margin-top:6px;padding:10px 12px;border:1px solid #cdd1d5;border-radius:8px;background:#fff;font:inherit;font-size:15px;font-weight:400;line-height:1.6;color:#1e2124}
.admin-review-form textarea{resize:vertical;min-height:84px}
.admin-review-form input,.admin-review-form select{min-height:44px}
.admin-review-form textarea:focus,.admin-review-form input:focus,.admin-review-form select:focus{outline:2px solid #256ef4;outline-offset:-1px}
.admin-review-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 16px}
.admin-review-list .admin-review-form{margin:6px 0 4px;padding:14px;border:1px solid #e5e8ec;border-radius:10px;background:#f8f9fb}
.admin-review-original{margin:0 0 6px;font-size:14px;color:#5c6169}
.admin-review-original summary{cursor:pointer;color:#1b4f9c}
.admin-review-original p{margin:6px 0 0;padding:10px 12px;border-radius:8px;background:#f5f6f8;white-space:pre-wrap}
.admin-review-new .admin-draft-row button:last-child{background:#256ef4;border-color:#256ef4;color:#fff;font-weight:700}
/* 없는 주소(app/not-found.tsx) */
.nf{max-width:640px;margin:56px auto 72px;padding:0 20px}
.nf-code{margin:0;font-size:15px;font-weight:700;color:#0b50d0}
.nf h1{margin:6px 0 10px;font-size:28px;line-height:1.35;color:#1e2124}
.nf-lead{margin:0 0 22px;font-size:16px;line-height:1.7;color:#464c53;word-break:keep-all}
.nf-links{display:grid;gap:10px;margin:0;padding:0;list-style:none}
.nf-links li{display:grid;gap:2px;padding:14px 16px;border:1px solid #dfe1e5;border-radius:12px;background:#fff}
.nf-links a{font-size:17px;font-weight:700;color:#0b50d0;text-decoration:none}
.nf-links span{font-size:14px;color:#58616a}
/* 주소 검색이 0건일 때(app/location/spot-picker.tsx) */
.spot-empty{margin:8px 0 0;padding:10px 12px;border-radius:10px;background:#fff8e6;border:1px solid #f1d58a;font-size:14px;line-height:1.6;color:#5c4400;word-break:keep-all}

/* 첫 화면 검색 칸 밑 안내. franchise.css(짙은 바탕 시절)의 #8da1a5 + 투명도 .7 이 흰 바탕에서 2.7:1 아래였고,
   데모가 도는 동안의 연두(#b9df72)는 1.6:1 이었다(2026-10-03 scripts/check-contrast.mjs). */
.radar-demo-hint{color:#58616a;opacity:1}
.radar-demo-hint i{background:#58616a}
.radar-demo-hint.is-active{color:#0b50d0}
.radar-demo-hint.is-active i{background:#0b50d0;box-shadow:0 0 0 4px #0b50d024}

/* 찾은 뒤 업종·브랜드를 바꾼 경우(spot-finder stale). 결제 상자 자리에도 같은 안내가 들어간다(2026-10-05). */
.sf-stale{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;padding:12px 14px;border-radius:8px;background:#fff8e6;border:1px solid #f1d38a;color:#5c4300;font-size:14px}
.sf-stale p{margin:0;flex:1 1 220px}
.sf-stale button{min-height:44px;padding:0 16px;border:0;border-radius:8px;background:#256ef4;color:#fff;font-weight:700;font-size:15px;cursor:pointer}

/* 481px 이상에서 '많은 업종' 칸이 150px 남짓으로 좁아 네다섯 줄로 접히고, 숫자 칸은 비어 있었다(2026-10-05 768px 강남역).
   숫자 칸은 글자만큼만, 남은 폭은 '많은 업종' 칸이 쓴다. 480px 이하는 위 규칙(그 칸을 아래 줄로)이 그대로다. */
@media (min-width:481px){
  .sf-rings{table-layout:auto}
  .sf-rings th,.sf-rings td{width:1%;white-space:nowrap}
  .sf-rings td:last-child,.sf-rings thead th:last-child{width:auto;white-space:normal}
}

/* 종이에서 층 접힘을 펼치면 위 여섯 층(높은 층부터)과 나머지 층(또 높은 층부터)이 이어 붙어 '층 미상' 다음에 38층이 왔다(2026-10-05 코엑스).
   나머지 층 앞에 이름표를 남긴다. '보기' 는 종이에서 뜻이 없어 뺀다. */
@media print{
  .bh-floors-more>summary{display:block;min-height:0;margin:10px 0 4px;font-size:12px;font-weight:700;color:#58616a}
  .bh-floors-more>summary .bh-more-verb{display:none}
}

/* 결제 전 화면 인쇄: '결제하면 이 주소에서 받는 것'(rp-veil) 은 종이에도 남긴다 — 함께 정할 사람에게 보여 줄 것이 그것이다(2026-10-05).
   주소 줄(rp-lock-url)은 종이에만. 결제 단추는 위 규칙대로 지운다. */
.rp-lock-url{display:none}
@media print{
  .rp-lock-url{display:block;margin:10px 0 0;font-size:12px;color:#33363d}
  .rp-veil li{break-inside:avoid;page-break-inside:avoid}
  .rp-veil h2,.rp-veil-group{break-after:avoid;page-break-after:avoid}
}

/* ── 리포트 첫 장 '한눈에 판'(2026-10-06). 숫자 문장 여덟 줄을 막대·자·칸으로 먼저 보여 준다(report-view Board). ── */
.rp-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:4px 0 16px}
.rp-board-tile{min-width:0;padding:14px 16px;border:1px solid #e5e8ec;border-radius:12px;background:#fff}
.rp-board-tile.is-wide{grid-column:1/-1}
.rp-board-tile.is-watch{border-color:#f1c38a;background:#fff8ef}
.rp-board-tile.is-watch .rp-board-note{color:#58616a}
.rp-board-title{margin:0 0 4px;font-size:13px;font-weight:600;color:#4d5562}
.rp-board-big{margin:0 0 10px;font-size:26px;font-weight:800;line-height:1.2;color:#12233d}
.rp-board-big small{margin-left:3px;font-size:13px;font-weight:600;color:#58616a}
.rp-board-word{font-size:18px}
.rp-board-note{margin:8px 0 0;font-size:12px;line-height:1.5;color:#6b7480}
.rp-board-bars{display:grid;gap:6px;margin:0;padding:0;list-style:none}
.rp-board-bars li{display:grid;grid-template-columns:minmax(52px,auto) 1fr auto;align-items:center;gap:8px;font-size:12.5px;color:#4d5562}
.rp-board-bar-label{white-space:nowrap}
.rp-board-bar-track{height:10px;border-radius:2px;background:#eef1f4;overflow:hidden}
.rp-board-bar-track i{display:block;height:100%;border-radius:0 4px 4px 0;background:#9aa7b8}
.rp-board-bars li.is-here{font-weight:700;color:#12233d}
.rp-board-bars li.is-here .rp-board-bar-track i{background:#256ef4}
.rp-board-bars b{min-width:48px;text-align:right;font-weight:700;white-space:nowrap}
.rp-board-split{display:flex;gap:2px;height:12px;border-radius:99px;overflow:hidden;background:#eef1f4}
.rp-board-split i{display:block;min-width:2px}
.rp-board-split .is-here,.rp-board-split .is-profit{background:#256ef4}
.rp-board-split .is-gone{background:#d9692a}
.rp-board-split .is-cost{background:#d5dbe3}
.rp-board-pair+.rp-board-pair{margin-top:10px}
.rp-board-pair>p{margin:0 0 6px;font-size:12.5px;font-weight:700;color:#33363d}
.rp-board-ruler{position:relative;height:40px;margin:6px 6px 0}
.rp-board-ruler-line{position:absolute;left:0;right:0;top:12px;height:2px;background:#d5dbe3}
.rp-board-tick{position:absolute;top:7px;width:1px;height:12px}
.rp-board-tick::before{content:"";position:absolute;inset:0;background:#b6bfca}
.rp-board-tick em{position:absolute;top:16px;left:50%;transform:translateX(-50%);font-size:11px;font-style:normal;color:#6b7480;white-space:nowrap}
.rp-board-ruler i{position:absolute;top:7px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:#d9692a;border:2px solid #fff;box-shadow:0 0 0 1px #d9692a}
.rp-board-ruler i.is-first{top:5px;width:16px;height:16px;margin-left:-8px}
.rp-board-me{position:absolute;top:6px;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:#256ef4;border:2px solid #fff;box-shadow:0 0 0 1px #256ef4}
.rp-glance-fold{margin:0 0 6px}
.rp-glance-fold>summary{display:flex;align-items:center;min-height:44px;font-size:15px;font-weight:700;color:#0b50d0;cursor:pointer;list-style:none}
.rp-glance-fold>summary::-webkit-details-marker{display:none}
.rp-glance-fold>summary::before{content:"▸";margin-right:6px;transition:transform .15s}
.rp-glance-fold[open]>summary::before{transform:rotate(90deg)}
.rp-glance-fold[open]>summary{margin-bottom:8px}
@media (max-width:640px){.rp-board{grid-template-columns:1fr}.rp-board-big{font-size:24px}}
@media print{
  .rp-board{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rp-board-tile{break-inside:avoid;page-break-inside:avoid}
  .rp-glance-fold::details-content{content-visibility:visible;display:contents}
  .rp-glance-fold>summary{display:none}
  .rp-tips-title{break-after:avoid;page-break-after:avoid}
}

/* ── 그래프 방식 정리(2026-10-06, dataviz 지침): 막대는 값 쪽 끝만 둥글게, 두 색 이상이면 범례, 시작→끝은 구간 막대,
   고른 것만 파랑·나머지 회색(강조형). 주황 '사라짐' 은 #d9692a(흰 바탕 3:1 이상, 파랑과 색약 구별 ΔE 30). ── */
.rp-board-legend{display:flex;flex-wrap:wrap;gap:4px 12px;margin:8px 0 0;padding:0;list-style:none;font-size:12px;color:#4d5562}
.rp-board-legend li{display:inline-flex;align-items:center;gap:5px}
.rp-board-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;background:#9aa7b8}
.rp-board-legend i.is-here,.rp-board-legend i.is-profit,.rp-board-legend i.is-on{background:#256ef4}
.rp-board-legend i.is-gone{background:#d9692a}
.rp-board-legend i.is-cost{background:#d5dbe3}
.rp-board-legend i.is-me{border-radius:50%;background:#256ef4}
.rp-board-legend i.is-brand,.rp-board-legend i.is-out{border-radius:50%;background:#d9692a}
.rp-board-ruler.is-big{height:44px;margin:10px 8px 0}
/* 같은 브랜드 목록: 거꾸로 된 배경 막대를 뺐다(위 거리 자가 그 일을 한다). */
.rp-near li{overflow:visible}
/* 구간 막대 */
.rp-life-head{margin:12px 0 6px}
.rp-life-head .rp-board-legend{margin:0 0 6px}
.rp-life-axis{display:flex;justify-content:space-between;font-size:11px;color:#6b7480}
.rp-life-axis em{font-style:normal}
.rp-gonenear .rp-life-axis{padding:0 15px}
.rp-life{display:grid;gap:2px;height:10px}
.rp-life i{display:block;background:#eef1f4}
.rp-life i.is-on{background:#256ef4}
.rp-life i:first-child{border-radius:2px 0 0 2px}
.rp-life i:last-child{border-radius:0 2px 2px 0}
.rp-life i.is-out{position:relative}
.rp-life i.is-out::after{content:"";position:absolute;left:50%;top:50%;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:#d9692a;box-shadow:0 0 0 2px #fff}
.rp-life-cell{display:grid;gap:5px;min-width:0}
.rp-gonenear-list .rp-life-cell{grid-column:1/-1;margin-top:8px;white-space:normal;text-align:left;font-size:inherit}
.rp-gonenear-list .rp-life-cell em{font-size:13px;color:#4d5562}
.rp-gonenear-list .rp-life{white-space:normal}
.rp-gone ul.has-life .rp-life-cell{margin-top:6px}
.rp-gone ul.has-life .rp-life-cell em{font-size:13px;color:#4d5562}
/* 업종마다 3년: 남은 비율 칸 막대, 고른 업종 줄 강조 */
.rp-rate-cell{white-space:nowrap}
.rp-rate{display:inline-block;width:72px;height:8px;margin-right:8px;border-radius:2px;background:#eef1f4;vertical-align:middle;overflow:hidden}
.rp-rate i{display:block;height:100%;border-radius:0 4px 4px 0;background:#9aa7b8}
tr.is-pick .rp-rate i{background:#256ef4}
tr.is-pick th,tr.is-pick td{background:#f2f7ff}
tr.is-pick th small{display:block;font-size:11px;font-weight:600;color:#0b50d0}
@media (max-width:480px){.rp-rate{width:44px;margin-right:6px}}
.rp-gone ul.has-life li .rp-life-cell,.rp-gone ul.has-life li .rp-life-cell em{font-weight:400}
@media print{.rp-board-ruler.is-big,#rp-brandnear>.rp-board-legend{break-after:avoid;page-break-after:avoid}#rp-brandnear>h2{break-after:avoid}}
.rp-board-tick em{color:#58616a}

/* 그래프 글자도 14px 아래로 내리지 않는다(사이트 규칙, check-font-size — 2026-10-07 전체 검사에서 걸렸다). */
.rp-board-title{font-size:15px}
.rp-board-big small{font-size:14px}
.rp-board-note,.rp-board-legend,.rp-board-bars li,.rp-board-pair>p,.rp-board-tick em,.rp-life-axis{font-size:14px}
.rp-board-bars li{grid-template-columns:minmax(56px,auto) 1fr auto}
.rp-gonenear-list .rp-life-cell em,.rp-gone ul.has-life .rp-life-cell em{font-size:14px}
tr.is-pick th small{font-size:14px}

/* ── 수익 계산기(app/profit-simulator.tsx, 2026-10-07) ── 글자 14px 이상 · 남는 돈만 파랑, 비용은 회색 계열 · 손해는 주황 */
.ps{max-width:1180px;margin:0 auto;padding:48px 24px 56px;color:#1e2124;font-family:var(--krds-font-family-base,inherit)}
.ps h2{margin:0;font-size:30px;letter-spacing:-.04em;line-height:1.3;word-break:keep-all}
.ps h3{margin:0 0 10px;font-size:17px;letter-spacing:-.02em}
.ps-eyebrow{margin:0 0 10px;color:#1a5bd1;font-size:14px;font-weight:800}
.ps-lead{margin:12px 0 24px;color:#464c53;font-size:16px;line-height:1.7;word-break:keep-all}
.ps-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:20px;align-items:start}
.ps-inputs{display:grid;gap:14px}
.ps-card,.ps-result{padding:22px;border:1px solid #d6dbe0;border-radius:16px;background:#fff}
.ps-result{position:sticky;top:88px;display:grid;gap:18px}
.ps-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.ps-card-head strong{font-size:17px}
.ps-region{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:#464c53}
.ps-region select{min-height:40px;padding:0 10px;border:1px solid #b1b8be;border-radius:8px;background:#fff;font-size:15px;color:#1e2124}
.ps-sales{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.ps-sales strong{font-size:30px;letter-spacing:-.03em}
.ps-sales span{color:#58616a;font-size:14px}
.ps-range{width:100%;margin:14px 0 10px;accent-color:#256ef4;min-height:28px}
.ps-marks{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}
.ps-marks button{display:grid;gap:2px;padding:10px 12px;border:1px solid #d6dbe0;border-radius:10px;background:#f4f5f6;text-align:left;font-size:14px;color:#464c53;cursor:pointer;min-height:44px}
.ps-marks button b{color:#1e2124;font-size:16px}
.ps-marks button small{color:#58616a;font-size:14px}
.ps-marks button.is-on{border-color:#256ef4;background:#ecf2fe}
.ps-note{margin:10px 0 0;color:#58616a;font-size:14px;line-height:1.6}
.ps-link{border:0;background:none;color:#1a5bd1;font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer;min-height:44px;padding:0 4px}
.ps-auto{display:grid;gap:8px;margin:0 0 14px;padding:0;list-style:none}
.ps-auto li{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:10px 12px;border-radius:10px;background:#f4f5f6}
.ps-auto span{font-size:15px;color:#464c53}
.ps-auto b{font-size:16px}
.ps-auto small{grid-column:1/-1;color:#58616a;font-size:14px}
.ps-fields{display:grid;gap:12px}
.ps-fields.is-two{grid-template-columns:1fr 1fr}
.ps-field{display:grid;gap:6px}
.ps-field-label{font-size:15px;font-weight:700;color:#1e2124}
.ps-field-box{display:flex;align-items:center;border:1px solid #b1b8be;border-radius:10px;background:#fff;overflow:hidden}
.ps-field-box:focus-within{border-color:#256ef4;box-shadow:0 0 0 3px rgba(37,110,244,.18)}
.ps-field-box input{flex:1;min-width:0;min-height:46px;padding:0 12px;border:0;outline:0;font-size:17px;text-align:right;background:transparent;color:#1e2124}
.ps-field-box em{padding:0 12px 0 4px;font-style:normal;font-size:15px;color:#58616a}
.ps-field small{color:#58616a;font-size:14px;line-height:1.55;word-break:keep-all}
.ps-startup{margin-bottom:14px}
.ps-startup-total{display:grid;grid-template-columns:1fr auto;gap:2px 10px;padding:12px;border-radius:10px;background:#ecf2fe}
.ps-startup-total span{font-size:15px;font-weight:700}
.ps-startup-total b{font-size:18px}
.ps-startup-total small{grid-column:1/-1;color:#58616a;font-size:14px}
.ps-startup ul{display:grid;gap:4px;margin:8px 0 0;padding:0 12px;list-style:none}
.ps-startup li{display:flex;justify-content:space-between;font-size:15px;color:#464c53}
.ps-hero{padding:18px;border-radius:12px;background:#ecf2fe}
.ps-hero span{font-size:15px;font-weight:700;color:#1a5bd1}
.ps-hero strong{display:block;margin:4px 0;font-size:40px;letter-spacing:-.03em;color:#1e2124}
.ps-hero p{margin:0;color:#464c53;font-size:15px;line-height:1.6}
.ps-hero.is-loss{background:#fdf0e8}
.ps-hero.is-loss span{color:#a14a14}
.ps-bar{position:relative;display:flex;height:24px;border-radius:0 6px 6px 0;overflow:visible;background:#f1f3f5}
.ps-bar i{flex-basis:0;min-width:2px}
.ps-bar i+i{box-shadow:inset 1px 0 0 #fff}
.ps-bar i:last-of-type{border-radius:0 6px 6px 0}
.ps-bar .is-cogs,.ps-legend .is-cogs i{background:#c9d4e3}
.ps-bar .is-labor,.ps-legend .is-labor i{background:#aebfd6}
.ps-bar .is-rent,.ps-legend .is-rent i{background:#8fa6c4}
.ps-bar .is-other,.ps-legend .is-other i{background:#dfe5ee}
.ps-bar .is-extra,.ps-legend .is-extra i{background:#6f86a6}
.ps-bar .is-profit,.ps-legend .is-profit i{background:#256ef4}
.ps-bar-sales{position:absolute;top:-6px;bottom:-6px;width:3px;margin-left:-1px;background:#d9692a}
.ps-legend .is-line i{width:3px!important;height:16px!important;background:#d9692a}
.ps-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:10px 0 0;padding:0;list-style:none;font-size:14px;color:#464c53}
.ps-legend li{display:inline-flex;align-items:center;gap:6px}
.ps-legend i{display:inline-block;width:12px;height:12px;border-radius:3px}
.ps-legend b{color:#1e2124}
.ps-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ps-tile{display:grid;align-content:start;gap:6px;padding:14px;border:1px solid #d6dbe0;border-radius:12px}
.ps-tile span{font-size:14px;color:#464c53;font-weight:700}
.ps-tile strong{font-size:22px;letter-spacing:-.02em}
.ps-tile small{color:#58616a;font-size:14px;line-height:1.55;word-break:keep-all}
.ps-wage{display:grid;gap:4px}
.ps-wage div{display:grid;grid-template-columns:62px 1fr;align-items:center;gap:6px}
.ps-wage em{font-style:normal;font-size:14px;color:#58616a}
.ps-wage i{display:block;height:12px;border-radius:0 4px 4px 0;background:#b1b8be}
.ps-wage i.is-me{background:#256ef4}
.ps-steps{width:100%;border-collapse:collapse;font-size:15px}
.ps-steps th,.ps-steps td{padding:8px 6px;border-top:1px solid #e6e8ea;text-align:left;vertical-align:middle}
.ps-steps thead th{border-top:0;color:#58616a;font-size:14px;font-weight:700}
.ps-steps tbody th{width:110px;font-weight:700}
.ps-steps tbody th small{display:block;color:#58616a;font-size:14px;font-weight:400}
.ps-steps td{display:flex;align-items:center;gap:10px}
.ps-step-bar{flex:1;height:14px}
.ps-step-bar i{display:block;height:100%;border-radius:0 4px 4px 0;background:#b1b8be}
.ps-step-bar i.is-neg{background:#d9692a}
.ps-steps tr.is-now .ps-step-bar i:not(.is-neg){background:#256ef4}
.ps-steps tr.is-now th,.ps-steps tr.is-now b{color:#1a5bd1}
.ps-steps td b{min-width:96px;text-align:right}
.ps-say{margin:10px 0 0;color:#464c53;font-size:15px;line-height:1.65;word-break:keep-all}
.ps-say.is-watch{margin:0;padding:12px 14px;border-left:3px solid #d9692a;background:#fdf6f1}
.ps-source{margin:0;color:#58616a;font-size:14px;line-height:1.6;word-break:keep-all}
@media(max-width:900px){.ps-grid{grid-template-columns:1fr}.ps-result{position:static}.ps-tiles{grid-template-columns:1fr}}
@media(max-width:760px){.ps{padding:36px 16px 40px}.ps h2{font-size:24px}.ps-card,.ps-result{padding:16px}.ps-hero strong{font-size:34px}}
@media print{.ps-result{position:static}.ps-range,.ps-link{display:none}}
.ps-mini{display:none}
@media(max-width:900px){.ps-mini{position:sticky;top:72px;z-index:5;display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:12px 16px;border:1px solid #b9d1ff;border-radius:12px;background:#ecf2fe;box-shadow:0 6px 16px rgba(0,0,0,.08)}.ps-mini span{font-size:15px;font-weight:700;color:#1a5bd1}.ps-mini b{font-size:22px}.ps-mini.is-loss{border-color:#f1c3a5;background:#fdf0e8}.ps-mini.is-loss span{color:#a14a14}}
