/* REGIONAL-INFO-UNIFY-01 — 지역정보 디자인 시스템 01 (owner approved 2026-10-14,
   canvas "LOTBI 지역정보 통합 디자인 시안 01").
   One look for every screen inside 지역정보: the list, 병원·응급실·약국, 전기차 충전소,
   축제·행사, 지역뉴스, 지하철, 온누리상품권·지역화폐, 부동산 실거래가, 내 아이 학교·유치원.
   Same tokens as the 가족 지킴이 design system (10-14): blue #2563EB, ground #F6F7F9,
   status colours always with an icon and a word, never colour alone.
   Scope: .consumer-workspace[data-workspace="life"]. ":not(#ri)" lifts these rules
   above the per-screen sheets so this look wins only inside 지역정보.
   Behaviour stays in the JS. Every control stays at least 48px tall. */

.consumer-workspace[data-workspace="life"] {
  --ri-bg: #F6F7F9; --ri-surface: #FFFFFF; --ri-sub: #F2F4F6;
  --ri-line: #E5E8EB; --ri-line-strong: #D1D6DB;
  --ri-text: #191F28; --ri-text-2: #4E5968; --ri-text-3: #5F6B7A;
  --ri-blue: #2563EB; --ri-blue-hover: #1D4ED8; --ri-blue-soft: #EEF4FF; --ri-blue-line: #C9DAFD; --ri-blue-text: #1D4ED8;
  --ri-green: #15803D; --ri-green-soft: #EAF8EF;
  --ri-amber: #B45309; --ri-amber-soft: #FFF5E6; --ri-amber-text: #7A3D06;
  --ri-red: #D92D20; --ri-red-text: #B42318; --ri-red-soft: #FEF3F2; --ri-red-line: #FECDCA; --ri-red-deep: #7A271A;
  --ri-violet: #6D28D9; --ri-violet-soft: #F3EEFF;
  --ri-on-blue: #FFFFFF;
  --ri-radius-card: 16px; --ri-radius-control: 12px;
  --ri-icon-pin: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.1-7-11.4A7 7 0 0 1 19 9.6C19 14.9 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.4'/%3E%3C/svg%3E");
  --ri-icon-lock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5.5' y='11' width='13' height='9.5' rx='1.5'/%3E%3Cpath d='M8.5 11V8a3.5 3.5 0 0 1 7 0v3'/%3E%3C/svg%3E");
  --ri-icon-info: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v5.5M12 7.6v.1'/%3E%3C/svg%3E");
  --ri-icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7'/%3E%3C/svg%3E");
  --ri-icon-ok: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8 12.3l2.8 2.8L16.2 9.6'/%3E%3C/svg%3E");
  --ri-icon-help: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M9.6 9.4a2.5 2.5 0 1 1 3.4 2.3c-.6.3-1 .8-1 1.4v.6M12 16.8v.1'/%3E%3C/svg%3E");
  --ri-icon-clock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5.2l3.2 2'/%3E%3C/svg%3E");
  --ri-icon-minus: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8 12h8'/%3E%3C/svg%3E");
  --ri-icon-moon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 14.6A8.2 8.2 0 1 1 9.4 4a6.6 6.6 0 0 0 10.6 10.6z'/%3E%3C/svg%3E");
  --ri-icon-alert: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5l9.5 16.5h-19z'/%3E%3Cpath d='M12 10v4.5M12 17.3v.1'/%3E%3C/svg%3E");
  --ri-icon-phone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 4h3.2l1.9 4.6-2.3 1.5a11 11 0 0 0 6.1 6.1l1.5-2.3L20 15.8V19a2 2 0 0 1-2.1 2A16.5 16.5 0 0 1 3 6.1 2 2 0 0 1 5 4z'/%3E%3C/svg%3E");
  --ri-icon-siren: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 18.5v-6a5 5 0 0 1 10 0v6M5 18.5h14v2.5H5zM12 3v2M4.5 6.5l1.4 1.4M19.5 6.5l-1.4 1.4'/%3E%3C/svg%3E");
  --ri-icon-sort: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 4v16M3.5 16.5L7 20l3.5-3.5M17 20V4M13.5 7.5L17 4l3.5 3.5'/%3E%3C/svg%3E");
  --ri-icon-locate: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='6.5'/%3E%3Ccircle cx='12' cy='12' r='1.6'/%3E%3Cpath d='M12 2.5v3M12 18.5v3M2.5 12h3M18.5 12h3'/%3E%3C/svg%3E");
  background: var(--ri-bg);
}
body[data-site-theme="dark"] .consumer-workspace[data-workspace="life"],
html[data-site-theme-bootstrap="dark"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"] {
  --ri-bg: #17191C; --ri-surface: #212429; --ri-sub: #2A2E34;
  --ri-line: #33373D; --ri-line-strong: #4A5058;
  --ri-text: #F2F4F6; --ri-text-2: #C5CCD4; --ri-text-3: #A9B2BC;
  --ri-blue: #2F6FEB; --ri-blue-hover: #4A84F0; --ri-blue-soft: #1B2A45; --ri-blue-line: #2D4A7C; --ri-blue-text: #8AB4FF;
  --ri-green: #86EFAC; --ri-green-soft: #133A24;
  --ri-amber: #F2B774; --ri-amber-soft: #3A2A12; --ri-amber-text: #F5D4A8;
  --ri-red: #C8312A; --ri-red-text: #FCA5A5; --ri-red-soft: #3A1D1D; --ri-red-line: #5B2B2B; --ri-red-deep: #FCA5A5;
  --ri-violet: #C4B5FD; --ri-violet-soft: #2A2140;
}
@media (prefers-color-scheme: dark) {
  body[data-site-theme="system"] .consumer-workspace[data-workspace="life"],
  html[data-site-theme-bootstrap="system"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"] {
    --ri-bg: #17191C; --ri-surface: #212429; --ri-sub: #2A2E34;
    --ri-line: #33373D; --ri-line-strong: #4A5058;
    --ri-text: #F2F4F6; --ri-text-2: #C5CCD4; --ri-text-3: #A9B2BC;
    --ri-blue: #2F6FEB; --ri-blue-hover: #4A84F0; --ri-blue-soft: #1B2A45; --ri-blue-line: #2D4A7C; --ri-blue-text: #8AB4FF;
    --ri-green: #86EFAC; --ri-green-soft: #133A24;
    --ri-amber: #F2B774; --ri-amber-soft: #3A2A12; --ri-amber-text: #F5D4A8;
    --ri-red: #C8312A; --ri-red-text: #FCA5A5; --ri-red-soft: #3A1D1D; --ri-red-line: #5B2B2B; --ri-red-deep: #FCA5A5;
    --ri-violet: #C4B5FD; --ri-violet-soft: #2A2140;
  }
}

/* ── Frame: wider column, one header shape on every screen ───────────────── */
body.chat-home-page .consumer-workspace[data-workspace="life"]:not(#ri) > .site-modal { max-width: 1040px; }
.consumer-workspace[data-workspace="life"]:not(:has(.consumer-life-home)):not(#ri) .site-modal-close {
  width: 44px; height: 44px; min-width: 44px; border-radius: var(--ri-radius-control);
  color: var(--ri-text); font-size: 22px;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .site-modal-close:hover { background: var(--ri-sub); }
body.chat-home-page .consumer-workspace[data-workspace="life"]:not(#ri) .site-modal-header h2 {
  font-size: 28px; line-height: 36px; font-weight: 800; letter-spacing: -0.02em; color: var(--ri-text);
}
.consumer-workspace[data-workspace="life"]:not(#ri) .site-modal-description { color: var(--ri-text-2); font-size: 15px; line-height: 22px; }

/* ── Shared pieces (every screen) ────────────────────────────────────────── */
/* the display rules below never un-hide what the JS hid */
.consumer-workspace[data-workspace="life"]:not(#ri) [hidden] { display: none !important; }
/* chips: picked = soft blue + check, never colour alone */
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.festival-chip, .lotbi-news-chip, .lotbi-re-deal) {
  min-height: 48px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--ri-line-strong);
  background: var(--ri-surface); color: var(--ri-text); font-size: 15px; font-weight: 500; box-shadow: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.festival-chip, .lotbi-news-chip, .lotbi-re-deal):is([aria-pressed="true"], [aria-selected="true"], [aria-checked="true"], .is-active, .is-selected) {
  border-color: var(--ri-blue-line); background: var(--ri-blue-soft); color: var(--ri-blue-text); font-weight: 700;
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.festival-chip, .lotbi-news-chip, .lotbi-re-deal):is([aria-pressed="true"], [aria-selected="true"], [aria-checked="true"], .is-active, .is-selected)::before {
  content: ""; width: 16px; height: 16px; margin-right: 6px; flex-shrink: 0; display: inline-block; vertical-align: -2px;
  background: currentColor; -webkit-mask: var(--ri-icon-check) center / contain no-repeat; mask: var(--ri-icon-check) center / contain no-repeat;
}
/* buttons */
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-action {
  min-height: 48px; border-radius: var(--ri-radius-control); background: var(--ri-blue); color: var(--ri-on-blue);
  border: 1px solid var(--ri-blue); font-weight: 700; box-shadow: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-action:hover { background: var(--ri-blue-hover); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-action.consumer-action-secondary {
  background: var(--ri-surface); color: var(--ri-text); border: 1px solid var(--ri-line-strong);
}
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-action.consumer-action-secondary:hover { background: var(--ri-sub); }
/* the one-line notes: smaller, calm, never pushing the content down */
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-feature-note { color: var(--ri-text-3); font-size: 13px; line-height: 19px; }
/* "위치는 이번 검색에만…" carries a lock */
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.medical-location-note, .ev-location-note, .subway-location-note, .onnuri-location-note, .voucher-nearby-note):not(:empty)::before {
  content: ""; display: inline-block; width: 14px; height: 14px; margin-right: 6px; vertical-align: -2px;
  background: currentColor; -webkit-mask: var(--ri-icon-lock) center / contain no-repeat; mask: var(--ri-icon-lock) center / contain no-repeat;
}
/* the source line at the foot of a list: one quiet card */
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.medical-source, .ev-source, .onnuri-source, .subway-coverage):not(:empty) {
  margin: 4px 0 0; padding: 12px 16px; border-radius: var(--ri-radius-control);
  background: var(--ri-surface); border: 1px solid var(--ri-line); color: var(--ri-text-2); font-size: 13px; line-height: 20px;
}


/* ── 지역정보 목록 (메인) ─────────────────────────────────────────────────── */
@media (min-width: 601px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):has(.consumer-life-home) .site-modal-close::after { content: '대화로 돌아가기'; }
}
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-home { gap: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location {
  display: flex; align-items: center; gap: 12px; min-height: 72px; box-sizing: border-box; padding: 12px 12px 12px 16px;
  border: 1px solid var(--ri-line); border-radius: var(--ri-radius-card); background: var(--ri-surface);
}
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-chip { flex: 1 1 auto; min-width: 0; gap: 12px; min-height: 44px; padding: 0; border-radius: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-chip > svg { width: 22px; height: 22px; flex-shrink: 0; padding: 9px; border-radius: 10px; background: var(--ri-blue-soft); box-sizing: content-box; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-chip > svg path:first-child { fill: var(--ri-blue); stroke: var(--ri-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-chip > svg path:last-child { fill: var(--ri-blue-soft); stroke: var(--ri-blue-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-label { min-width: 0; overflow: hidden; text-overflow: ellipsis; color: var(--ri-text); font-size: 18px; font-weight: 800; letter-spacing: -0.01em; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-tag {
  display: inline-flex; align-items: center; flex-shrink: 0; min-height: 28px; padding: 0 10px; border-radius: 8px;
  background: var(--ri-sub); color: var(--ri-text-2); font-size: 13px; font-weight: 700; white-space: nowrap;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-region-change {
  flex-shrink: 0; min-height: 48px; padding: 0 18px; border: 1px solid var(--ri-line-strong); border-radius: var(--ri-radius-control);
  background: var(--ri-surface); color: var(--ri-text); font-size: 15px; font-weight: 700;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-region-change:hover { background: var(--ri-sub); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-region-chevron { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location[data-life-region="unset"] { border-color: var(--ri-blue-line); background: var(--ri-blue-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location[data-life-region="unset"] .consumer-life-location-chip > svg { background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location[data-life-region="unset"] .consumer-life-location-chip > svg path:last-child { fill: var(--ri-surface); stroke: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location[data-life-region="unset"] .consumer-life-region-change { border-color: var(--ri-blue); background: var(--ri-blue); color: var(--ri-on-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location[data-life-region="unset"] .consumer-life-region-change:hover { background: var(--ri-blue-hover); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-note { margin: 8px 0 0; padding: 0 4px; color: var(--ri-text-2); font-size: 14px; line-height: 21px; }
/* the list keeps its heading for screen readers; the design shows the cards right under the note */
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-section-label {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcuts { margin-top: 24px; gap: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut {
  min-height: 176px; padding: 24px 20px 22px; gap: 18px; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-card);
  background: var(--ri-surface); box-shadow: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut:hover { border-color: var(--ri-blue-line); background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut::after { top: 30px; right: 24px; border-color: var(--ri-text-3); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon { width: 48px; height: 48px; flex: 0 0 48px; border-radius: 14px; background: var(--ri-blue-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon > svg { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon::before {
  content: ""; width: 26px; height: 26px; background: var(--ri-blue);
  -webkit-mask: center / contain no-repeat; mask: center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon-hospital::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20.5V9.5L12 4l8 5.5v11z'/%3E%3Cpath d='M12 10v6M9 13h6'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 20.5V9.5L12 4l8 5.5v11z'/%3E%3Cpath d='M12 10v6M9 13h6'/%3E%3C/svg%3E"); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon-ev::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3.5v4M15 3.5v4'/%3E%3Cpath d='M6.5 7.5h11V11a5.5 5.5 0 0 1-11 0z'/%3E%3Cpath d='M12 16.5v4'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3.5v4M15 3.5v4'/%3E%3Cpath d='M6.5 7.5h11V11a5.5 5.5 0 0 1-11 0z'/%3E%3Cpath d='M12 16.5v4'/%3E%3C/svg%3E"); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon-calendar::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3Cpath d='M12 12.6l1 2 2.2.3-1.6 1.5.4 2.2-2-1-2 1 .4-2.2-1.6-1.5 2.2-.3z'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3Cpath d='M12 12.6l1 2 2.2.3-1.6 1.5.4 2.2-2-1-2 1 .4-2.2-1.6-1.5 2.2-.3z'/%3E%3C/svg%3E"); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon-news::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='4.5' width='13' height='15' rx='1.5'/%3E%3Cpath d='M16.5 8.5h3V18a1.5 1.5 0 0 1-3 0M7 9h6M7 12.5h6M7 16h3.5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='4.5' width='13' height='15' rx='1.5'/%3E%3Cpath d='M16.5 8.5h3V18a1.5 1.5 0 0 1-3 0M7 9h6M7 12.5h6M7 16h3.5'/%3E%3C/svg%3E"); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon-subway::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='3.5' width='14' height='13.5' rx='3'/%3E%3Cpath d='M5 10.5h14M8.5 17l-2 3.5M15.5 17l2 3.5M8.6 13.8h.1M15.3 13.8h.1'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='3.5' width='14' height='13.5' rx='3'/%3E%3Cpath d='M5 10.5h14M8.5 17l-2 3.5M15.5 17l2 3.5M8.6 13.8h.1M15.3 13.8h.1'/%3E%3C/svg%3E"); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon-voucher::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 7h17v3a2 2 0 0 0 0 4v3h-17v-3a2 2 0 0 0 0-4z'/%3E%3Cpath d='M9.5 7v10'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 7h17v3a2 2 0 0 0 0 4v3h-17v-3a2 2 0 0 0 0-4z'/%3E%3Cpath d='M9.5 7v10'/%3E%3C/svg%3E"); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon-building::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 11L12 4l8.5 7'/%3E%3Cpath d='M6 9.3V20h12V9.3M10 20v-5h4v5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 11L12 4l8.5 7'/%3E%3Cpath d='M6 9.3V20h12V9.3M10 20v-5h4v5'/%3E%3C/svg%3E"); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon-backpack::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 9L12 4.5 21.5 9 12 13.5z'/%3E%3Cpath d='M6.5 11v4.8c3 2.4 8 2.4 11 0V11M21.5 9v5'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 9L12 4.5 21.5 9 12 13.5z'/%3E%3Cpath d='M6.5 11v4.8c3 2.4 8 2.4 11 0V11M21.5 9v5'/%3E%3C/svg%3E"); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon-cctv::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8l12.5-3 1.8 5.8L4.8 13.8z'/%3E%3Cpath d='M8 13l1.2 4.5H4M17 9.2l3.5 1v3.2l-3.5-1'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8l12.5-3 1.8 5.8L4.8 13.8z'/%3E%3Cpath d='M8 13l1.2 4.5H4M17 9.2l3.5 1v3.2l-3.5-1'/%3E%3C/svg%3E"); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon-pin::before { -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.1-7-11.4A7 7 0 0 1 19 9.6C19 14.9 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.4'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.1-7-11.4A7 7 0 0 1 19 9.6C19 14.9 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.4'/%3E%3C/svg%3E"); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-title { color: var(--ri-text); font-size: 19px; font-weight: 800; line-height: 1.3; letter-spacing: -0.02em; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-description { color: var(--ri-text-2); font-size: 14px; font-weight: 500; line-height: 1.45; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-privacy-note { display: flex; align-items: center; gap: 8px; margin: 28px 0 0; padding: 0 4px; color: var(--ri-text-3); font-size: 13px; line-height: 19px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-privacy-note::before {
  content: ""; width: 14px; height: 14px; flex-shrink: 0; background: currentColor;
  -webkit-mask: var(--ri-icon-lock) center / contain no-repeat; mask: var(--ri-icon-lock) center / contain no-repeat;
}
@media (max-width: 600px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location { flex-wrap: wrap; padding: 12px; gap: 10px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-label { font-size: 16px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-region-change { min-height: 48px; padding: 0 14px; font-size: 14px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcuts { margin-top: 20px; gap: 10px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut { min-height: 168px; padding: 16px 14px; gap: 14px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut::after { top: 24px; right: 16px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon { width: 44px; height: 44px; flex-basis: 44px; border-radius: 12px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-icon::before { width: 24px; height: 24px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-title { font-size: 16px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-description { font-size: 13px; }
}

/* ── 전기차 충전소 ─────────────────────────────────────────────────────────── */
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-surface { gap: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-basis { margin: 0; color: var(--ri-text-2); font-size: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-locate { min-height: 48px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-region-field select { min-height: 48px; border-color: var(--ri-line-strong); border-radius: var(--ri-radius-control); background: var(--ri-surface); color: var(--ri-text); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-chip-row { gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-status { margin: 4px 0 0; color: var(--ri-text); font-size: 20px; line-height: 28px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-results { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 0; padding: 0; list-style: none; }
@media (min-width: 901px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) .ev-results { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
}
/* one card: name and distance, can I charge now (big), what chargers, the rest, then 확인 시각 + map app */
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 10px 12px;
  grid-template-areas: "head head" "address address" "summary summary" "chargers chargers" "meta meta" "checked map";
  padding: 20px; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-card); background: var(--ri-surface); box-shadow: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-body { display: contents; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-head { grid-area: head; display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-name { margin: 0; color: var(--ri-text); font-size: 18px; line-height: 25px; font-weight: 700; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-distance { flex-shrink: 0; color: var(--ri-text); font-size: 15px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-address { grid-area: address; display: flex; gap: 8px; margin: 0; color: var(--ri-text-2); font-size: 14px; line-height: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-address::before {
  content: ""; width: 16px; height: 16px; margin-top: 2px; flex-shrink: 0; background: var(--ri-text-3);
  -webkit-mask: var(--ri-icon-pin) center / contain no-repeat; mask: var(--ri-icon-pin) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-summary {
  grid-area: summary; display: grid; gap: 2px; margin: 2px 0 0; padding: 14px 16px 14px 52px; position: relative;
  border-radius: var(--ri-radius-control); background: var(--ri-sub);
}
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-summary::before {
  content: ""; position: absolute; left: 16px; top: 16px; width: 24px; height: 24px; background: var(--ri-text-2);
  -webkit-mask: var(--ri-icon-minus) center / contain no-repeat; mask: var(--ri-icon-minus) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-state { color: var(--ri-text); font-size: 20px; line-height: 28px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-summary[data-ev-state="AVAILABLE"] { background: var(--ri-green-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-summary[data-ev-state="AVAILABLE"] .ev-station-state { color: var(--ri-green); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-summary[data-ev-state="AVAILABLE"]::before { background: var(--ri-green); -webkit-mask-image: var(--ri-icon-ok); mask-image: var(--ri-icon-ok); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-summary[data-ev-state="UNCHECKED"] { background: var(--ri-amber-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-summary[data-ev-state="UNCHECKED"] .ev-station-state { color: var(--ri-amber); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-summary[data-ev-state="UNCHECKED"]::before { background: var(--ri-amber); -webkit-mask-image: var(--ri-icon-help); mask-image: var(--ri-icon-help); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-summary .ev-badge {
  display: block; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent;
  color: var(--ri-text-2); font-size: 14px; line-height: 21px; font-weight: 500;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-chargers { grid-area: chargers; display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-charger {
  display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border: 0; border-radius: 8px;
  background: var(--ri-sub); color: var(--ri-text); font-size: 14px; line-height: 20px; font-weight: 600;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-charger::before {
  content: ""; width: 15px; height: 15px; flex-shrink: 0; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2.5L5 13.5h6l-1 8 8-11h-6z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2.5L5 13.5h6l-1 8 8-11h-6z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-meta { grid-area: meta; display: flex; gap: 8px; margin: 0; color: var(--ri-text-2); font-size: 14px; line-height: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-meta::before {
  content: ""; width: 16px; height: 16px; margin-top: 2px; flex-shrink: 0; background: var(--ri-text-3);
  -webkit-mask: var(--ri-icon-clock) center / contain no-repeat; mask: var(--ri-icon-clock) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-meta[data-ev-limited] { color: var(--ri-amber); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-meta[data-ev-limited]::before { background: var(--ri-amber); -webkit-mask-image: var(--ri-icon-alert); mask-image: var(--ri-icon-alert); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station::after { content: ""; grid-row: 6; grid-column: 1 / -1; align-self: start; height: 0; border-top: 1px solid var(--ri-line); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-station-checked { grid-area: checked; margin: 12px 0 0; color: var(--ri-text-3); font-size: 13px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-map-link {
  grid-area: map; display: inline-flex; align-items: center; justify-content: center; gap: 8px; width: auto; height: auto;
  min-width: 48px; min-height: 48px; margin-top: 12px; padding: 0 16px; border: 1px solid var(--ri-blue-line); border-radius: var(--ri-radius-control);
  background: var(--ri-blue-soft); color: var(--ri-blue-text); font-size: 15px; font-weight: 700; text-decoration: none; position: relative;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-map-link:hover { background: var(--ri-blue-soft); border-color: var(--ri-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-map-icon { width: 22px; height: 22px; border-radius: 6px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-empty { list-style: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-error:not([hidden]) {
  display: grid; justify-items: center; gap: 12px; padding: 28px 20px; border-radius: var(--ri-radius-card);
  border: 1px solid var(--ri-line); background: var(--ri-surface); color: var(--ri-text); text-align: center;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .ev-more { justify-self: center; min-width: 160px; }
@media (max-width: 767px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) .ev-station { padding: 16px; }
}

/* ── 내 아이 학교·유치원 ───────────────────────────────────────────────────── */
/* 알레르기: the words carry a warning mark too, never colour alone */
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-mychild-contains { display: inline-flex; align-items: center; gap: 4px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-mychild-contains::before {
  content: ""; width: 14px; height: 14px; flex-shrink: 0; background: currentColor;
  -webkit-mask: var(--ri-icon-alert) center / contain no-repeat; mask: var(--ri-icon-alert) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-mychild-actions .consumer-action, .consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-mychild-footer .consumer-action { min-height: 48px; }
/* delete asks once in its own box */
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-mychild-confirm {
  width: min(420px, calc(100vw - 32px)); max-width: none; box-sizing: border-box; margin: auto; padding: 24px;
  border: 0; border-radius: 20px; background: var(--ri-surface); color: var(--ri-text); box-shadow: 0 20px 48px rgb(0 0 0 / 24%);
}
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-mychild-confirm::backdrop { background: rgb(15 20 25 / 48%); }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-mychild-confirm-title { margin: 0 0 8px; font-size: 20px; line-height: 28px; font-weight: 800; color: var(--ri-text); word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-mychild-confirm-text { margin: 0 0 20px; font-size: 15px; line-height: 23px; color: var(--ri-text-2); word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-mychild-confirm-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-mychild-confirm-actions .consumer-action { min-height: 48px; justify-content: center; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-mychild-confirm-actions .lotbi-mychild-confirm-delete { border-color: var(--ri-red); background: var(--ri-red); color: #FFFFFF; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-mychild-confirm-actions .lotbi-mychild-confirm-delete:hover { background: var(--ri-red-text); }

/* ── 온누리상품권·지역화폐 / 부동산: tabs, cards, map app buttons ─────────────── */
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.voucher-tabs, .lotbi-re-tabs) {
  display: flex; gap: 4px; padding: 0; border: 0; border-bottom: 1px solid var(--ri-line); border-radius: 0; background: transparent;
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.voucher-tab, .lotbi-re-tab) {
  flex: 0 0 auto; min-height: 52px; margin-bottom: -1px; padding: 0 18px; border: 0; border-bottom: 3px solid transparent; border-radius: 0;
  background: transparent; color: var(--ri-text-2); font-size: 17px; font-weight: 600; box-shadow: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.voucher-tab, .lotbi-re-tab):is([aria-selected="true"], [aria-pressed="true"]) {
  background: transparent; color: var(--ri-blue-text); border-bottom-color: var(--ri-blue); font-weight: 800;
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-card, .voucher-card) {
  display: grid; gap: 10px; padding: 20px; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-card);
  background: var(--ri-surface); box-shadow: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-results, .voucher-results) { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
@media (min-width: 640px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-results, .voucher-results) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-card-head, .voucher-card-head) { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-card-distance, .voucher-card-distance) { flex-shrink: 0; color: var(--ri-text); font-size: 15px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-card-address, .voucher-card-address) { display: flex; gap: 8px; margin: 0; color: var(--ri-text-2); font-size: 14px; line-height: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-card-address, .voucher-card-address)::before {
  content: ""; width: 16px; height: 16px; margin-top: 2px; flex-shrink: 0; background: var(--ri-text-3);
  -webkit-mask: var(--ri-icon-pin) center / contain no-repeat; mask: var(--ri-icon-pin) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-card-actions, .voucher-card-actions) { display: flex; flex-wrap: wrap; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-card-actions, .voucher-card-actions) > * { flex: 1 1 140px; }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-card-map, .voucher-card-map, .lotbi-re-map-link) {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 16px;
  border: 1px solid var(--ri-blue-line); border-radius: var(--ri-radius-control); background: var(--ri-blue-soft); color: var(--ri-blue-text);
  font-size: 15px; font-weight: 700; text-decoration: none; box-shadow: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-card-map, .voucher-card-map, .lotbi-re-map-link):hover { background: var(--ri-blue-soft); border-color: var(--ri-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-map-icon, .voucher-map-icon, .lotbi-re-map-icon) { width: 22px; height: 22px; border-radius: 6px; }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-card-phone, .voucher-card-phone) {
  min-height: 48px; border: 1px solid var(--ri-line-strong); border-radius: var(--ri-radius-control); background: var(--ri-surface); color: var(--ri-text);
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-disclaimer-box, .voucher-notice-box) {
  padding: 0 16px; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-control); background: var(--ri-surface);
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-disclaimer-summary, .voucher-notice-summary) {
  display: flex; align-items: center; gap: 8px; min-height: 48px; list-style: none; cursor: pointer; color: var(--ri-text-2); font-size: 14px;
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-disclaimer-summary, .voucher-notice-summary)::-webkit-details-marker { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-disclaimer-summary, .voucher-notice-summary)::before {
  content: ""; width: 16px; height: 16px; flex-shrink: 0; background: var(--ri-text-3);
  -webkit-mask: var(--ri-icon-info) center / contain no-repeat; mask: var(--ri-icon-info) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-disclaimer-more, .voucher-notice-more) { margin-left: auto; flex-shrink: 0; color: var(--ri-blue-text); font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri) .voucher-notice-box > p { margin: 0 0 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-disclaimer-summary, .voucher-notice-summary) { margin: 0; padding: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri) .onnuri-disclaimer-box .onnuri-disclaimer { margin: 0 0 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .onnuri-modes { padding: 4px; border: 0; border-radius: 14px; background: var(--ri-line); }
.consumer-workspace[data-workspace="life"]:not(#ri) .onnuri-mode { min-height: 48px; border: 0; border-radius: 10px; background: transparent; color: var(--ri-text-2); font-weight: 700; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .onnuri-mode:is([aria-selected="true"], [aria-pressed="true"]) { background: var(--ri-surface); color: var(--ri-blue-text); box-shadow: 0 1px 3px rgb(25 31 40 / 12%); }
.consumer-workspace[data-workspace="life"]:not(#ri) .voucher-scheme { border: 1px solid var(--ri-line-strong); border-radius: var(--ri-radius-control); background: var(--ri-surface); color: var(--ri-text); }
.consumer-workspace[data-workspace="life"]:not(#ri) .voucher-scheme:is([aria-pressed="true"], [aria-checked="true"], [aria-selected="true"]) { border: 2px solid var(--ri-blue); background: var(--ri-blue-soft); }
@media (max-width: 900px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-card, .voucher-card) { gap: 6px; padding: 14px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) :is(.onnuri-card-actions, .voucher-card-actions) > * { flex: 1 1 96px; }
}
@media (min-width: 1024px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) .onnuri-results { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .onnuri-card { gap: 6px; padding: 14px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .onnuri-card-actions > * { flex: 1 1 96px; }
}
/* 부동산: the region step, the filters and the name search read as separate blocks */
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.lotbi-re-region, .lotbi-re-filters) {
  margin: 0; padding: 16px; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-card); background: var(--ri-surface);
}
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-re-legend { padding: 0 4px; color: var(--ri-text); font-size: 15px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.lotbi-re-selects select, .lotbi-re-period, .lotbi-re-name input, .lotbi-re-region-search input) {
  min-height: 48px; border: 1px solid var(--ri-line-strong); border-radius: var(--ri-radius-control); background: var(--ri-surface); color: var(--ri-text);
}
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-re-row { border: 1px solid var(--ri-line); border-radius: var(--ri-radius-card); background: var(--ri-surface); box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-re-list { display: grid; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-re-row { padding: 0 8px 0 0; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-re-row-main { padding: 14px 16px; border-radius: var(--ri-radius-card); }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-re-legend { float: left; width: 100%; margin: 0 0 12px; padding: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-re-legend + * { clear: both; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-re-row-name { color: var(--ri-text); font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.lotbi-re-row-address, .lotbi-re-row-deal) { color: var(--ri-text-2); }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-re-deal-row { border-color: var(--ri-line); }

/* ── 지역뉴스 ──────────────────────────────────────────────────────────────── */
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-chip, .consumer-workspace[data-workspace="life"]:not(#ri) :is(.lotbi-news-mode, .lotbi-news-period, .lotbi-news-category) {
  min-height: 44px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--ri-line-strong);
  background: var(--ri-surface); color: var(--ri-text); font-size: 14px; font-weight: 600; box-shadow: none; white-space: nowrap;
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.lotbi-news-mode, .lotbi-news-period, .lotbi-news-category)[aria-pressed="true"] {
  border-color: var(--ri-blue-line); background: var(--ri-blue-soft); color: var(--ri-blue-text); font-weight: 800;
}
/* the filters stay short: period and 분야 scroll sideways in one line each */
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.lotbi-news-periods, .lotbi-news-categories) {
  display: flex; flex-wrap: nowrap; gap: 6px; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px;
}
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.lotbi-news-periods, .lotbi-news-categories)::-webkit-scrollbar { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-list { display: grid; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-row { border: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-item {
  display: flex; align-items: center; gap: 14px; padding: 12px; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-card);
  background: var(--ri-surface); color: var(--ri-text); text-decoration: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-item:hover { border-color: var(--ri-blue-line); }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-thumb {
  display: grid; place-items: center; align-content: center; gap: 2px; flex: 0 0 72px; width: 72px; height: 72px; overflow: hidden;
  border-radius: 12px; background: var(--ri-blue-soft); color: var(--ri-blue-text);
}
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-thumb-image { width: 100%; height: 100%; object-fit: cover; display: block; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-thumb[data-news-thumb="default"]::before {
  content: ""; width: 24px; height: 24px; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='4.5' width='13' height='15' rx='1.5'/%3E%3Cpath d='M16.5 8.5h3V18a1.5 1.5 0 0 1-3 0M7 9h6M7 12.5h6M7 16h3.5'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='4.5' width='13' height='15' rx='1.5'/%3E%3Cpath d='M16.5 8.5h3V18a1.5 1.5 0 0 1-3 0M7 9h6M7 12.5h6M7 16h3.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-thumb-label { max-width: 64px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; font-weight: 700; line-height: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-item-copy { flex: 1 1 auto; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-item-title { color: var(--ri-text); font-size: 16px; line-height: 23px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-item-meta { color: var(--ri-text-3); font-size: 13px; }
@media (max-width: 600px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-thumb { flex-basis: 60px; width: 60px; height: 60px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-item { gap: 12px; padding: 10px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .lotbi-news-item-title { font-size: 15px; line-height: 21px; }
}

/* ── 지하철 ─────────────────────────────────────────────────────────────────── */
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-surface { gap: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.subway-block) { padding: 20px; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-card); background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-block-title { color: var(--ri-text); font-size: 20px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-direction-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-direction-row .festival-chip { min-height: 56px; border-radius: var(--ri-radius-control); font-size: 17px; font-weight: 800; justify-content: center; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-direction-row .festival-chip[aria-pressed="true"] { border-color: var(--ri-blue); background: var(--ri-blue); color: var(--ri-on-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-direction-row .festival-chip[aria-pressed="true"]::before { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-arrivals { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-arrival { display: grid; gap: 4px; padding: 16px; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-control); background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-arrival:first-child { border: 2px solid var(--ri-green); }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-arrival-head { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; color: var(--ri-text-2); font-size: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-arrival-direction { color: var(--ri-text); font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-arrival-direction:empty { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-arrival-line { color: var(--ri-text-2); font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-arrival-when { margin: 2px 0 0; color: var(--ri-text); font-size: 26px; line-height: 34px; font-weight: 800; letter-spacing: -0.02em; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-arrival:first-child .subway-arrival-when { font-size: 32px; line-height: 40px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-arrival-message { margin: 0; color: var(--ri-text); font-size: 16px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.subway-arrival-meta, .subway-arrival-position, .subway-checked) { margin: 0; color: var(--ri-text-3); font-size: 13px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-tag { display: inline-flex; align-items: center; min-height: 24px; padding: 0 8px; border-radius: 6px; background: var(--ri-sub); color: var(--ri-text); font-size: 12px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-tag-last { background: var(--ri-red-soft); color: var(--ri-red-text); }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-refresh { min-height: 44px; border-color: var(--ri-blue-line); background: var(--ri-blue-soft); color: var(--ri-blue-text); }
.consumer-workspace[data-workspace="life"]:not(#ri) :is(.subway-group-button) { border: 1px solid var(--ri-line); border-radius: var(--ri-radius-control); background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri) .subway-average-fill { background: var(--ri-blue); }

/* ── 축제·행사 ─────────────────────────────────────────────────────────────── */
.consumer-workspace[data-workspace="life"]:not(#ri) .festival-card { border: 1px solid var(--ri-line); border-radius: var(--ri-radius-card); background: var(--ri-surface); box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .festival-card[data-festival-ended] { opacity: .78; }
/* no picture: the same default tile on every card (blue ground, calendar mark, the words) */
.consumer-workspace[data-workspace="life"]:not(#ri) .festival-hero:has(.festival-hero-placeholder), .consumer-workspace[data-workspace="life"]:not(#ri) .festival-hero-placeholder { background: var(--ri-blue-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri) .festival-hero-placeholder { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; width: 100%; height: 100%; }
.consumer-workspace[data-workspace="life"]:not(#ri) .festival-hero-placeholder::before {
  content: ""; width: 36px; height: 36px; background: var(--ri-blue);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3Cpath d='M12 12.6l1 2 2.2.3-1.6 1.5.4 2.2-2-1-2 1 .4-2.2-1.6-1.5 2.2-.3z'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3.5' y='5' width='17' height='15.5' rx='2'/%3E%3Cpath d='M3.5 10h17M8 3v4M16 3v4'/%3E%3Cpath d='M12 12.6l1 2 2.2.3-1.6 1.5.4 2.2-2-1-2 1 .4-2.2-1.6-1.5 2.2-.3z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .festival-hero-placeholder::after { content: "사진 없음 · 축제·행사"; color: var(--ri-blue-text); font-size: 13px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri) .festival-card-map { border-color: var(--ri-blue-line); background: var(--ri-blue-soft); color: var(--ri-blue-text); }

/* ── 병원·응급실·약국 ─────────────────────────────────────────────────────── */
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-surface {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-auto-flow: row; gap: 16px 12px; align-items: center;
}
/* one column, top to bottom, in the order the JS builds it; only the count and its sort words share a row */
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-surface > * { grid-column: 1 / -1; grid-row: auto; justify-self: stretch; width: auto; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-surface > .medical-status { grid-column: 1; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-surface > .medical-notice { grid-column: 2; justify-self: end; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-surface > :is(.medical-status-filter, .medical-more) { justify-self: start; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-surface > .medical-more { justify-self: center; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-title {
  font-size: 28px; line-height: 36px; font-weight: 800; letter-spacing: -0.02em; color: var(--ri-text);
}
/* 병원·의원 / 응급실 / 약국: underline tabs on a wide screen, a segment on a phone */
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-kind-row {
  display: flex; gap: 4px; width: 100%; overflow: visible; padding: 0; border: 0; border-bottom: 1px solid var(--ri-line); border-radius: 0; background: transparent; box-shadow: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-kind-row .medical-kind {
  flex: 0 0 auto; min-height: 52px; margin-bottom: -1px; padding: 0 18px; border: 0; border-bottom: 3px solid transparent;
  border-right: 0; border-radius: 0; background: transparent; color: var(--ri-text-2); font-size: 17px; font-weight: 600; box-shadow: none; transition: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-kind-row .medical-kind::before { content: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-kind-row .medical-kind[aria-pressed="true"] {
  background: transparent; color: var(--ri-blue-text) !important; border-bottom-color: var(--ri-blue); font-weight: 800; box-shadow: none;
}
@media (max-width: 767px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) .medical-kind-row {
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; padding: 4px; border: 0; border-radius: 14px; background: var(--ri-line);
  }
  .consumer-workspace[data-workspace="life"]:not(#ri) .medical-kind-row .medical-kind {
    min-height: 48px; margin: 0; padding: 0 4px; border: 0; border-radius: 10px; font-size: 15px;
  }
  .consumer-workspace[data-workspace="life"]:not(#ri) .medical-kind-row .medical-kind[aria-pressed="true"] {
    background: var(--ri-surface); box-shadow: 0 1px 3px rgb(25 31 40 / 12%);
  }
}
/* where: the place in use + 지역 변경 */
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-where-row {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 8px; border-radius: 14px;
  background: var(--ri-surface); border: 1px solid var(--ri-line);
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-where-row .medical-locate {
  flex: 1 1 auto; justify-content: flex-start; min-height: 48px; padding: 0 12px !important; border: 0; border-color: transparent !important;
  background: transparent !important; color: var(--ri-text) !important; font-size: 16px; font-weight: 700; text-align: left;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-where-row .medical-locate::before {
  content: ""; width: 20px; height: 20px; margin-right: 8px; flex-shrink: 0; background: var(--ri-blue);
  -webkit-mask: var(--ri-icon-pin) center / contain no-repeat; mask: var(--ri-icon-pin) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-where-row .medical-locate:hover { background: var(--ri-sub) !important; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-where-row .medical-region-toggle {
  flex: 0 0 auto; min-height: 48px; padding: 0 16px !important; border-color: var(--ri-line-strong) !important; border-radius: var(--ri-radius-control);
  background: var(--ri-surface); color: var(--ri-text) !important; font-size: 15px;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-where-row .medical-region-toggle[aria-pressed="true"] { border-color: var(--ri-blue-line) !important; background: var(--ri-blue-soft); color: var(--ri-blue-text) !important; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-location-note { margin: -8px 0 0; text-align: left; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-region-row { gap: 8px; }
/* 진료과: no tinted box, outline chips, the picked one checked */
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-specialty { display: grid; grid-template-columns: minmax(0, 1fr); padding: 0; border: 0; border-radius: 0; background: transparent; gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-specialty-title { font-size: 14px; font-weight: 700; color: var(--ri-text-2); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-specialty-row { display: flex; flex-wrap: wrap; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-specialty-chip,
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-specialty-more {
  display: inline-flex; align-items: center; min-height: 48px; padding: 0 16px; border-radius: 999px;
  border: 1px solid var(--ri-line-strong); background: var(--ri-surface); color: var(--ri-text); font-size: 15px; font-weight: 500;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-specialty-more { font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-specialty-chip[aria-pressed="true"] {
  border-color: var(--ri-blue-line); background: var(--ri-blue-soft); color: var(--ri-blue-text); font-weight: 700;
}
/* 진료·영업 시간인 곳만: a switch with its word */
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-status-filter {
  justify-self: start; display: inline-flex; align-items: center; gap: 10px; min-height: 48px; padding: 0 14px 0 10px;
  border: 1px solid var(--ri-line-strong); border-radius: 999px; background: var(--ri-surface); color: var(--ri-text); font-size: 15px; font-weight: 600;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-status-filter-input {
  appearance: none; -webkit-appearance: none; position: relative; width: 40px; height: 24px; margin: 0; flex-shrink: 0;
  border-radius: 999px; background: var(--ri-line-strong); cursor: pointer; transition: background .15s;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-status-filter-input::after {
  content: ""; position: absolute; left: 3px; top: 3px; width: 18px; height: 18px; border-radius: 50%; background: #FFFFFF; transition: left .15s;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-status-filter-input:checked { background: var(--ri-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-status-filter-input:checked::after { left: 19px; }
/* 응급실: 119 first */
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-emergency {
  padding: 14px 14px 14px 18px; border: 1px solid var(--ri-red-line); border-radius: var(--ri-radius-card);
  background: var(--ri-red-soft); color: var(--ri-red-text); font-size: 16px; font-weight: 700;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-emergency-text { display: flex; align-items: flex-start; gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-emergency-text::before {
  content: ""; width: 24px; height: 24px; flex-shrink: 0; background: currentColor;
  -webkit-mask: var(--ri-icon-siren) center / contain no-repeat; mask: var(--ri-icon-siren) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-call {
  min-height: 48px; padding: 0 22px; border: 0; border-radius: var(--ri-radius-control); background: var(--ri-red); color: #FFFFFF; font-size: 17px; font-weight: 800;
}
/* the count line, the sort words, the one legend */
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-status { color: var(--ri-text); font-size: 20px; line-height: 28px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-status-count { color: var(--ri-blue-text); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-notice { display: inline-flex; align-items: center; gap: 6px; margin: 0; color: var(--ri-text-2); font-size: 14px; text-align: right; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-notice:not([hidden])::after { content: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-notice::before {
  content: ""; width: 16px; height: 16px; background: currentColor;
  -webkit-mask: var(--ri-icon-sort) center / contain no-repeat; mask: var(--ri-icon-sort) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-legend {
  display: flex; gap: 8px; margin: 0; color: var(--ri-text-2); font-size: 14px; line-height: 21px;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-legend::before {
  content: ""; width: 17px; height: 17px; margin-top: 2px; flex-shrink: 0; background: var(--ri-text-3);
  -webkit-mask: var(--ri-icon-info) center / contain no-repeat; mask: var(--ri-icon-info) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-basis { color: var(--ri-text-3); font-size: 13px; }
/* cards: two columns on a wide screen, the text first (no picture slot) */
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-results { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 0; }
@media (min-width: 901px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) .medical-results { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place {
  display: flex; flex-direction: column; gap: 10px; padding: 20px; border-radius: var(--ri-radius-card);
  border: 1px solid var(--ri-line); background: var(--ri-surface); box-shadow: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-media { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-name { margin: 0; font-size: 18px; line-height: 25px; font-weight: 700; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-link { color: var(--ri-text); text-decoration: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-link:hover { text-decoration: underline; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-distance-tag { flex-shrink: 0; color: var(--ri-text); font-size: 15px; font-weight: 700; line-height: 25px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-category-row { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-category {
  width: 100%; margin: 0 0 2px; padding: 0; border: 0; background: transparent; color: var(--ri-text-2); font-size: 14px; font-weight: 500;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-badge {
  display: inline-flex; align-items: center; gap: 5px; min-height: 28px; padding: 0 10px; border: 0; border-radius: 8px;
  background: var(--ri-sub); color: var(--ri-text-2); font-size: 14px; font-weight: 700; line-height: 1;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-badge::before {
  content: ""; width: 15px; height: 15px; flex-shrink: 0; background: currentColor;
  -webkit-mask: var(--ri-icon-minus) center / contain no-repeat; mask: var(--ri-icon-minus) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-badge:is([data-medical-badge="OPEN"], [data-medical-badge="ALL_DAY"], [data-medical-badge="HOLIDAY"]) { background: var(--ri-green-soft); color: var(--ri-green); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-badge:is([data-medical-badge="OPEN"], [data-medical-badge="ALL_DAY"], [data-medical-badge="HOLIDAY"])::before { -webkit-mask-image: var(--ri-icon-ok); mask-image: var(--ri-icon-ok); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-badge[data-medical-badge="CLOSING_SOON"] { background: var(--ri-amber-soft); color: var(--ri-amber); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-badge[data-medical-badge="CLOSING_SOON"]::before { -webkit-mask-image: var(--ri-icon-clock); mask-image: var(--ri-icon-clock); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-badge[data-medical-badge="UNKNOWN"] { background: var(--ri-amber-soft); color: var(--ri-amber); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-badge[data-medical-badge="UNKNOWN"]::before { -webkit-mask-image: var(--ri-icon-help); mask-image: var(--ri-icon-help); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-badge[data-medical-badge="NIGHT"] { background: var(--ri-violet-soft); color: var(--ri-violet); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-badge[data-medical-badge="NIGHT"]::before { -webkit-mask-image: var(--ri-icon-moon); mask-image: var(--ri-icon-moon); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-hours {
  display: flex; align-items: center; gap: 8px; margin: 0; color: var(--ri-text); font-size: 15px; line-height: 22px;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-hours[data-medical-hours="CLOSED"] { color: var(--ri-text-2); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-hours[data-medical-hours="NOT_LISTED"] { color: var(--ri-amber); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-hours .medical-line-icon {
  width: 16px; height: 16px; flex-shrink: 0; background: var(--ri-text-3);
  -webkit-mask: var(--ri-icon-clock) center / contain no-repeat; mask: var(--ri-icon-clock) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-address {
  display: flex; align-items: flex-start; gap: 8px; margin: 0; color: var(--ri-text-2); font-size: 14px; line-height: 20px;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-address::before {
  content: ""; width: 16px; height: 16px; margin-top: 2px; flex-shrink: 0; background: var(--ri-text-3);
  -webkit-mask: var(--ri-icon-pin) center / contain no-repeat; mask: var(--ri-icon-pin) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-lines:empty { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-lines :is(.medical-place-note, .medical-place-state) { margin: 0; color: var(--ri-text-2); font-size: 13px; line-height: 19px; }
/* 응급실 card: the bed report big, its time, the hospital's own notice */
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-er { display: grid; gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-beds {
  display: grid; grid-template-columns: auto minmax(0, 1fr); grid-template-areas: "label time" "value time";
  align-items: center; column-gap: 16px; padding: 12px 14px; border-radius: var(--ri-radius-control); background: var(--ri-sub);
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-beds-label { grid-area: label; color: var(--ri-text-2); font-size: 13px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-beds-value { grid-area: value; color: var(--ri-text-2); font-size: 20px; line-height: 28px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-beds-time {
  grid-area: time; justify-self: start; display: inline-flex; align-items: center; gap: 5px; min-height: 26px; padding: 0 9px;
  border-radius: 7px; background: var(--ri-blue-soft); color: var(--ri-blue-text); font-size: 13px; font-weight: 700;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-beds[data-medical-beds="AVAILABLE"] { background: var(--ri-green-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-beds[data-medical-beds="AVAILABLE"] .medical-place-beds-value { color: var(--ri-green); font-size: 30px; line-height: 36px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-beds[data-medical-beds="FULL"] { background: var(--ri-red-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-beds[data-medical-beds="FULL"] .medical-place-beds-value { color: var(--ri-red-text); font-size: 24px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-notice {
  display: grid; gap: 2px; margin: 0; padding: 10px 12px; border-radius: 10px; background: var(--ri-amber-soft);
  color: var(--ri-amber-text); font-size: 14px; line-height: 21px;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-notice > strong { display: inline; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-notice-origin { font-size: 13px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-notice-text { grid-column: 1 / -1; }
/* actions: phone first in soft blue, the map button is the reader's own map app */
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-place-actions {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: auto; padding: 4px 0 0; border: 0;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-action {
  display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 12px;
  border: 1px solid var(--ri-line-strong); border-radius: var(--ri-radius-control); background: var(--ri-surface);
  color: var(--ri-text); font-size: 15px; font-weight: 700; text-decoration: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-action + .medical-action { border-left: 1px solid var(--ri-line-strong); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-action::before { content: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-action-phone { border-color: var(--ri-blue-line); background: var(--ri-blue-soft); color: var(--ri-blue-text); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-action-phone .medical-action-icon { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-action-phone::before {
  content: ""; width: 18px; height: 18px; background: currentColor;
  -webkit-mask: var(--ri-icon-phone) center / contain no-repeat; mask: var(--ri-icon-phone) center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-action-map .medical-action-icon {
  display: block; width: 22px; height: 22px; border-radius: 6px; flex-shrink: 0;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-action-label { display: inline; position: static; width: auto; height: auto; clip: auto; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-action:hover { background: var(--ri-sub); }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-action-phone:hover { background: var(--ri-blue-soft); border-color: var(--ri-blue); }
@media (max-width: 767px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) .medical-place { padding: 16px; }
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-more { justify-self: center; min-width: 160px; }
/* a problem: a card with its next step */
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-error:not([hidden]) {
  display: grid; justify-items: center; gap: 12px; padding: 28px 20px; border-radius: var(--ri-radius-card);
  border: 1px solid var(--ri-line); background: var(--ri-surface); color: var(--ri-text); text-align: center; font-size: 15px; line-height: 23px;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-error-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .medical-call-inline { background: var(--ri-red); color: #FFFFFF; border-color: var(--ri-red); }

/* REGIONAL-INFO-DESIGN-02 (owner 2026-10-15/16, 시안 02) — card actions as icons only
   (site-life-card-actions.js): a small picture, a 48px touch target, words only in aria-label. */
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-icon-action {
  box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center;
  width: 48px; height: 48px; min-width: 48px; border-radius: 24px; flex: none;
  border: 1px solid var(--ri-line); background: var(--ri-surface); color: var(--ri-blue);
  text-decoration: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-icon-action:focus-visible { outline: 3px solid rgba(37, 99, 235, .35); outline-offset: 2px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-icon-action svg { width: 22px; height: 22px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-icon-phone { border-color: transparent; background: var(--ri-blue-soft); color: var(--ri-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-icon-phone.is-red { background: var(--ri-red-soft); color: var(--ri-red-text); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-icon-map-image { display: block; width: 28px; height: 28px; border-radius: 7px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-icon-map.is-lg { width: 60px; height: 60px; border-radius: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-icon-map.is-lg .ri-icon-map-image { width: 36px; height: 36px; border-radius: 9px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-icon-actions { display: flex; flex-direction: column; gap: 6px; flex: none; }

/* REGIONAL-INFO-DESIGN-02 메인 E안 (owner chose E, 2026-10-16): big tiles, a coloured 3D icon and the
   name only. Phones two columns (unchanged grid), wide screens four. No description, no chevron. */
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location[data-life-region="current"] .consumer-life-location-tag { background: var(--ri-blue-soft); color: var(--ri-blue-text); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcuts { margin-top: 16px; gap: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut {
  display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between;
  min-height: 132px; padding: 16px 18px 18px; gap: 12px; border-radius: 20px; text-align: left;
}
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut::after { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-description { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-title { font-size: 17px; line-height: 23px; font-weight: 800; color: var(--ri-text); word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon {
  display: flex; align-items: center; justify-content: center;
  width: 56px; height: 56px; flex: 0 0 56px; border-radius: 17px;
  background: linear-gradient(160deg, var(--hub-a), var(--hub-b));
  box-shadow: 0 6px 14px var(--hub-shadow), inset 0 2px 0 rgba(255, 255, 255, .35);
}
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon::before { content: none; display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon > svg { display: block; width: 32px; height: 32px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon.is-red { --hub-a: #FF8A8E; --hub-b: #E5484D; --hub-shadow: rgba(229, 72, 77, .30); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon.is-green { --hub-a: #4FD585; --hub-b: #12A150; --hub-shadow: rgba(18, 161, 80, .28); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon.is-orange { --hub-a: #FFA45C; --hub-b: #F76B15; --hub-shadow: rgba(247, 107, 21, .28); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon.is-indigo { --hub-a: #8B85FF; --hub-b: #4F46E5; --hub-shadow: rgba(79, 70, 229, .28); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon.is-teal { --hub-a: #4CC9E6; --hub-b: #0891B2; --hub-shadow: rgba(8, 145, 178, .28); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon.is-amber { --hub-a: #FFC94D; --hub-b: #D99100; --hub-shadow: rgba(217, 145, 0, .28); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon.is-blue { --hub-a: #6B9BFF; --hub-b: #2563EB; --hub-shadow: rgba(37, 99, 235, .28); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon.is-violet { --hub-a: #B497FF; --hub-b: #8B5CF6; --hub-shadow: rgba(139, 92, 246, .28); }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon.is-pink { --hub-a: #FF8FC7; --hub-b: #DB2777; --hub-shadow: rgba(219, 39, 119, .28); }   /* LIFEINFO-DEV-30: 팝업 */
.consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon.is-grey { --hub-a: #9AA4B2; --hub-b: #5F6B7A; --hub-shadow: rgba(95, 107, 122, .28); }
@media (min-width: 761px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcuts { gap: 16px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut { min-height: 172px; padding: 22px; border-radius: 22px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon { width: 68px; height: 68px; flex-basis: 68px; border-radius: 21px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .ri-hub-icon > svg { width: 38px; height: 38px; }
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-shortcut-title { font-size: 19px; line-height: 26px; }
}
/* 메인 E: the region card on one line at 360–390 px (pin, place, tag, [지역 변경]). */
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location { flex-wrap: nowrap; min-height: 64px; padding: 8px 8px 8px 14px; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-chip { gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-chip > svg { width: 22px; height: 22px; padding: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-chip > svg path:last-child { fill: var(--ri-surface); stroke: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-label { font-size: 17px; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-tag { min-height: 24px; padding: 0 7px; border-radius: 6px; font-size: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-region-change { min-height: 48px; padding: 0 14px; font-size: 15px; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location[data-life-region="unset"] .consumer-life-location-chip > svg path:last-child { fill: var(--ri-blue-soft); stroke: var(--ri-blue-soft); }
@media (max-width: 359px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) .consumer-life-location-tag { display: none; }
}

/* ════════════════════════════════════════════════════════════════════════════
   REGIONAL-INFO-DESIGN-02 FIX (owner 2026-10-16: 운영 화면을 확정 시안과 차이 0으로).
   Values are read from the confirmed 시안 HTML (E-mweb, E-pc, S-hospital-1, S-er, S-region,
   S-ev, S-news-week-1, S-subway, S-onnuri, S-estate, S-school-home, S-school-add).
   ":not(#ri):not(#ri-02)" lifts these rules above every earlier 지역정보 rule.
   Light values are the 시안's own; the dark theme uses the same --ri-* roles.
   ════════════════════════════════════════════════════════════════════════════ */
/* FAINT-TEXT-CONTRAST-01 (애플 담당 아이폰 15 측정 10-26): the faint text #8B95A1 was 3.0:1 on white and 2.8:1 on #F6F7F9;
   light --d-faint / --rp-text3 / --ri3-text3 are the shared 보조 글자색 #5F6B7A (5.4 white, 4.75 on #EEF0F3). Dark values stay. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) {
  --d-muted: #6B7684; --d-faint: #5F6B7A; --d-seg: #EEF0F3; --d-blue-line: #BFD3FF; --d-photo: #DDE3EA;
  --d-tile-red: #FFEBEC; --d-tile-red-fill: #FFC9CB; --d-tile-red-line: #E5484D;
  --d-notice: #92400E; --d-shadow: rgba(0, 0, 0, .08);
  box-sizing: border-box;
  font-family: "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;
  word-break: keep-all;
  background: var(--ri-bg);
}
body[data-site-theme="dark"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02),
html[data-site-theme-bootstrap="dark"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) {
  --d-muted: #A9B2BC; --d-faint: #8B95A1; --d-seg: #2A2E34; --d-blue-line: #2D4A7C; --d-photo: #3A3F46;
  --d-tile-red: #3A1D1D; --d-tile-red-fill: #5B2B2B; --d-tile-red-line: #FCA5A5;
  --d-notice: #F5D4A8; --d-shadow: rgba(0, 0, 0, .35);
}
@media (prefers-color-scheme: dark) {
  body[data-site-theme="system"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02),
  html[data-site-theme-bootstrap="system"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) {
    --d-muted: #A9B2BC; --d-faint: #8B95A1; --d-seg: #2A2E34; --d-blue-line: #2D4A7C; --d-photo: #3A3F46;
    --d-tile-red: #3A1D1D; --d-tile-red-fill: #5B2B2B; --d-tile-red-line: #FCA5A5;
    --d-notice: #F5D4A8; --d-shadow: rgba(0, 0, 0, .35);
  }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) :is(button, input, select, textarea) { font-family: inherit; }

/* ── frame: 〈 parent link, the title, 14px between the parts (phones) ── */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal { max-width: 1080px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .site-modal-header {
  display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: 14px; padding: 0 0 14px; margin: 0;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .site-modal-close.ri-back {
  display: inline-flex; align-items: center; gap: 4px; width: auto; height: auto; min-width: 0; min-height: 44px; flex: none;
  margin: 0 0 0 -6px; padding: 0 6px 0 0; border: 0; border-radius: 8px; background: transparent; box-shadow: none;
  color: var(--ri-text-2); font-size: 15px; line-height: 22px; font-weight: 700; letter-spacing: 0; text-decoration: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .site-modal-close.ri-back::before {
  content: ""; width: 22px; height: 22px; flex: none; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 5l-7 7 7 7'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M15 5l-7 7 7 7'/%3E%3C/svg%3E") center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .site-modal-close.ri-back::after { content: none; display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .site-modal-close.ri-back:hover { background: transparent; color: var(--ri-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .site-modal-close.ri-back:focus-visible { outline: 3px solid var(--ri-blue-line); outline-offset: 2px; }
body.chat-home-page .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .site-modal-header h2 {
  margin: 0; color: var(--ri-text); font-size: 26px; line-height: 34px; font-weight: 800; letter-spacing: -0.5px;
}
/* a screen inside 지역정보 (병원, 뉴스, 내 아이 …) titles itself: the frame's 「지역정보」 is for screen readers */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal[data-life-view]:not([data-life-view="life"]) .site-modal-header h2 {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal[data-life-view]:not([data-life-view="life"]) .site-modal-header { padding-bottom: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-title,
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) :is(.lotbi-news-title, .my-child-title) {
  margin: 0; color: var(--ri-text); font-size: 26px; line-height: 34px; font-weight: 800; letter-spacing: -0.5px;
}
.ri-topbar { display: none; }
@media (max-width: 760px) {
  body.chat-home-page .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) { padding: 8px 20px 24px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal {
    box-sizing: border-box; width: calc(100% + 40px); max-width: none; margin: 0 -20px; padding: 0 20px;
  }
  /* The bar of every 지역정보 screen is the home's header (.chat-topbar): ☰ on the left (the drawer opens from the left),
     the official LOTBI logo beside it (light/dark), the account avatar on the right once signed in — 소유자 2026-10-19:
     it was 「LOTBI」 as text on the left and ☰ on the right. Then 〈 대화로 돌아가기 and 「지역정보」. Every screen of 지역정보 has it
     (also the ones that open as their own surface — 축제·행사, 온누리, 부동산, 전기차, 지하철 — which carry no data-life-view). */
  /* measured against the home's header at 390 (☰ box x 1–49, logo x 55, 로그인 pill right edge 8px from the screen's) */
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal > .ri-topbar {
    display: flex; align-items: center; gap: 6px; box-sizing: border-box; height: 64px; margin: -8px -20px 6px; padding: 0 8px 0 1px;
    border-bottom: 1px solid var(--ri-line); background: var(--ri-surface);
  }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-topbar-brand { display: flex; align-items: center; flex: 1 1 auto; min-width: 0; min-height: 48px; text-decoration: none; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-topbar-logo { width: auto; height: 34px; object-fit: contain; border: 0; box-shadow: none; filter: none; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) :is(.ri-topbar-menu, .ri-topbar-account) {
    display: grid; place-items: center; flex: 0 0 48px; width: 48px; height: 48px; padding: 0; border: 0; border-radius: 10px; background: transparent; color: var(--ri-text); cursor: pointer;
  }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-topbar-menu svg { width: 21px; height: 21px; fill: currentColor; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-topbar-account { display: none; border-radius: 999px; }
  body[data-site-authenticated="true"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-topbar-account { display: grid; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-topbar-account .sidebar-profile-avatar { width: 34px; height: 34px; flex-basis: 34px; }
  /* 로그인 (signed out): the home header's pill — 44px high, 14px 600, 1px line, fully round */
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-topbar-login {
    display: none; flex: 0 0 auto; align-items: center; justify-content: center; box-sizing: border-box; min-width: 44px; height: 44px; padding: 0 16px;
    border: 1px solid var(--ri-line); border-radius: 22px; background: var(--ri-surface); color: var(--ri-text); font: inherit; font-size: 14px; font-weight: 600; line-height: 1; cursor: pointer;
  }
  body[data-site-auth-state="unauthenticated"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-topbar-login { display: inline-flex; }
  /* ACCOUNT-UNKNOWN-HEADER-03: also while the account state is unknown, as on the home header. */
  body[data-site-auth-state="unknown"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-topbar-login { display: inline-flex; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal[data-life-view="life"] .site-modal-close.ri-back { font-size: 14px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal[data-life-view="life"] .site-modal-close.ri-back::before { width: 20px; height: 20px; }
  body.chat-home-page .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal[data-life-view="life"] .site-modal-header h2 { font-size: 28px; line-height: 36px; }
}
@media (min-width: 761px) {
  body.chat-home-page .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) { padding: 32px 24px 48px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal { width: 100%; margin: 0 auto; padding: 0; position: relative; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .site-modal-header { gap: 20px; padding-bottom: 20px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .site-modal-close.ri-back { gap: 6px; margin-left: 0; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .site-modal-close.ri-back::before { width: 20px; height: 20px; }
  body.chat-home-page .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal[data-life-view="life"] .site-modal-header h2 { font-size: 32px; line-height: 40px; letter-spacing: -0.6px; }
}

/* ── 메인 D안 (시안 03 최종본, owner confirmed 2026-10-17): 「⊙ 지역 기준」 line + compact summary cards ──
   Phone 2 columns, wide screen 4. Card = 40px icon, title, one summary line (label · big number · unit).
   No region box, tag or note line; the line itself is the region button (44px target, drawn as text). */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-home { display: flex; flex-direction: column; gap: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-location {
  display: flex; flex-wrap: nowrap; align-items: center; box-sizing: border-box; height: 20px; min-height: 0; margin-top: -5px; padding: 0;
  border: 0; border-radius: 0; background: transparent;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-region-change {
  display: inline-flex; align-items: center; flex: 0 1 auto; box-sizing: border-box; min-width: 0; max-width: calc(100% + 8px);
  min-height: 44px; height: 44px; margin: -12px 0 -12px -8px; padding: 0 8px; border: 0; border-radius: 10px;
  background: transparent; color: inherit; font: inherit; box-shadow: none; cursor: pointer; text-align: left;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-region-change:hover { border: 0; background: var(--ri-sub); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-region-change:focus-visible { outline: 3px solid var(--ri-blue-line); outline-offset: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-location-chip { display: flex; flex: 0 1 auto; align-items: center; gap: 4px; min-width: 0; min-height: 0; padding: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-location-chip > svg { width: 15px; height: 15px; flex: none; padding: 0; border-radius: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-location-chip > svg path { fill: none !important; stroke: var(--ri-blue) !important; stroke-width: 2; stroke-linecap: round; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-location-chip > svg path:last-child { fill: var(--ri-blue) !important; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-location-label { color: var(--ri-text-3); font-size: 13px; line-height: 18px; font-weight: 500; letter-spacing: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-location[data-life-region="unset"] .consumer-life-location-label { color: var(--ri-blue-text); font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-location-tag,
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-where-tag {
  display: inline-flex; align-items: center; flex: none; min-height: 0; padding: 2px 7px; border-radius: 6px;
  background: var(--ri-blue-soft); color: var(--ri-blue-text); font-size: 12px; line-height: 18px; font-weight: 700; white-space: nowrap;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcuts {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcut {
  display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; box-sizing: border-box;
  min-height: 0; height: auto; padding: 16px; gap: 10px; border: 0; border-radius: 18px; background: var(--ri-surface);
  box-shadow: 0 1px 2px rgba(17, 20, 24, .04), 0 2px 8px rgba(17, 20, 24, .04); text-align: left;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcut:hover { border: 0; background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcut:focus-visible { outline: 3px solid var(--ri-blue-line); outline-offset: 2px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-hub-icon { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; flex: 0 0 40px; border-radius: 12px; background: var(--hub-b); box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-hub-icon > svg { width: 22px; height: 22px; filter: none; stroke-linecap: round; stroke-linejoin: round; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-hub-icon.is-green { --hub-b: #0E9F55; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcut-copy { display: block; width: 100%; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcut-title { display: block; min-height: 0; color: var(--ri-text); font-size: 16px; line-height: 19px; font-weight: 700; letter-spacing: -0.3px; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcut-summary { display: block; margin-top: 8px; min-height: 24px; color: var(--ri-text-2); font-size: 13px; line-height: 24px; font-weight: 600; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcut-summary strong { margin: 0 2px; color: var(--ri-text); font-size: 22px; line-height: 1; font-weight: 800; font-variant-numeric: tabular-nums; }
/* DENSITY-01 (민원 mrep_7df3945c486249f48aba, 10-28 아이폰 「지역정보를 한 화면에 다 보이게」): nine cards stood 133px tall in two
   columns and ran past the phone's screen. On a phone the icon sits left of the title, so each card is about half as tall. */
@media (max-width: 600px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .consumer-shortcut { display: grid; grid-template-columns: 34px minmax(0, 1fr); align-items: center; column-gap: 10px; row-gap: 0; padding: 12px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .ri-hub-icon { width: 34px; height: 34px; flex-basis: 34px; border-radius: 10px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .ri-hub-icon > svg { width: 19px; height: 19px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .consumer-shortcut-summary { display: flex; align-items: baseline; margin-top: 2px; min-height: 20px; line-height: 20px; white-space: nowrap; overflow: hidden; } /* 7번 실사용 점검 10-29: 「확인 중」 -> 숫자로 바뀌어도 줄 높이 그대로 */
  /* 7번 10-29 (보조방 앱 캡처 「병원 진료 중 9…」「가맹점 5,96…」): the number and its unit never shrink; only the words before them are cut. */
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .consumer-shortcut-summary > span:not(.consumer-shortcut-amount) { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .consumer-shortcut-summary > .consumer-shortcut-amount { flex: none; margin: 0 1px 0 4px; white-space: nowrap; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .consumer-shortcut-summary strong { font-size: 18px; }
}
/* 7번 10-29: at 375~400px a card's text column was 95px, too narrow for 「병원 진료 중 913곳」 -- a smaller icon and gap, 12px words. */
@media (max-width: 400px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .consumer-shortcut { grid-template-columns: 30px minmax(0, 1fr); column-gap: 7px; padding: 12px 10px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .ri-hub-icon { width: 30px; height: 30px; flex-basis: 30px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .ri-hub-icon > svg { width: 17px; height: 17px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .consumer-shortcut-summary { font-size: 12px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .consumer-shortcut-summary > span:not(.consumer-shortcut-amount) { letter-spacing: -0.3px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .consumer-shortcut-summary strong { font-size: 16px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .consumer-shortcut-summary > .consumer-shortcut-amount { margin-left: 3px; }
  /* 7번 10-29 (운영 360폭 「병원 진… 888곳」): when the words and the number do not fit one row, the number goes to the next row --
     never a cut word. */
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .consumer-shortcut-summary { flex-wrap: wrap; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02):not(#ri-03) .consumer-shortcut-summary > span:not(.consumer-shortcut-amount) { flex: 0 1 auto; }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcut-title-long { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcut-title-short { display: inline; }
@media (min-width: 761px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal[data-life-view="life"] .site-modal-header { padding-bottom: 20px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal[data-life-view="life"] { margin-top: -4px; }
  body.chat-home-page .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal[data-life-view="life"] .site-modal-header h2 { margin: -4px 0 0; line-height: 42px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-home { gap: 20px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-home > .consumer-life-location { position: static; margin-top: -4px; padding: 0; border-radius: 0; max-width: 100%; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal[data-life-view="life"] { max-width: 960px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcuts { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcut-title-long { display: inline; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-shortcut-title-short { display: none; }
}

/* ── 지역 고르기 / 지역 변경 window (시안 04 → 시안 03 최종본 2026-10-17) — the same on every screen ──
   Values from the 시안 board (SCR.region): a sheet from the bottom on a phone, a 560px window in the middle on a PC. */
.lotbi-sheet.lotbi-region-picker-sheet {
  --rp-surface: #FFFFFF; --rp-surface2: #F2F4F6; --rp-text: #191F28; --rp-text2: #4E5968; --rp-text3: #5F6B7A; --rp-line: #E5E8EB; --rp-line2: #D1D6DB;
  --rp-blue: #2563EB; --rp-blue-weak: #EBF2FF; --rp-on-blue: #FFFFFF;
  box-sizing: border-box; gap: 0; padding: 10px 20px calc(20px + env(safe-area-inset-bottom, 0px)); border: 0; border-radius: 24px 24px 0 0; background: var(--rp-surface); color: var(--rp-text);
  font-family: "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif; word-break: keep-all;
}
body[data-site-theme="dark"] .lotbi-sheet.lotbi-region-picker-sheet,
html[data-site-theme-bootstrap="dark"] body:not([data-site-theme]) .lotbi-sheet.lotbi-region-picker-sheet {
  --rp-surface: #1A1D21; --rp-surface2: #24282D; --rp-text: #ECEEF1; --rp-text2: #B0B8C1; --rp-text3: #7E8792; --rp-line: #2B3036; --rp-line2: #3A4048;
  --rp-blue: #4C8DFF; --rp-blue-weak: #1C2840; --rp-on-blue: #FFFFFF;
}
@media (prefers-color-scheme: dark) {
  body[data-site-theme="system"] .lotbi-sheet.lotbi-region-picker-sheet,
  html[data-site-theme-bootstrap="system"] body:not([data-site-theme]) .lotbi-sheet.lotbi-region-picker-sheet {
    --rp-surface: #1A1D21; --rp-surface2: #24282D; --rp-text: #ECEEF1; --rp-text2: #B0B8C1; --rp-text3: #7E8792; --rp-line: #2B3036; --rp-line2: #3A4048;
    --rp-blue: #4C8DFF; --rp-blue-weak: #1C2840; --rp-on-blue: #FFFFFF;
  }
}
.lotbi-sheet.lotbi-region-picker-sheet .lotbi-sheet-grabber { width: 36px; height: 5px; margin: 0 auto 18px; border-radius: 3px; background: var(--rp-line2); }
.lotbi-sheet.lotbi-region-picker-sheet .lotbi-sheet-body { padding: 0; overflow-x: hidden; }
/* REGION-SHEET-ONE-SCROLL-01 (소유자 아이폰 영상 10-26 「팝업에서 지역 넘길 때 드래그해도 바로 안 넘어가는 경우」): the sheet body and the
   구 grid both scrolled, so a drag moved the body (제목·검색 slid away) or stopped at the grid's end and needed a second drag.
   The grid now takes the room the sheet has left and is the one list that scrolls; the body only scrolls when even a
   short grid does not fit (a keyboard up for the search). */
.lotbi-sheet.lotbi-region-picker-sheet[data-presentation="SHEET"] .lotbi-sheet-body { display: flex; flex-direction: column; }
.lotbi-sheet.lotbi-region-picker-sheet[data-presentation="SHEET"] .lotbi-region-picker { flex: 1 1 auto; min-height: 0; }
.lotbi-sheet.lotbi-region-picker-sheet[data-presentation="SHEET"] .lotbi-region-picker > * { flex: none; }
.lotbi-sheet.lotbi-region-picker-sheet[data-presentation="SHEET"] .lotbi-region-picker .lotbi-region-picker-grid {
  flex: 1 1 auto; min-height: 104px; max-height: none; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; touch-action: pan-y;
}
/* no 닫기 row in the 시안: still there for a keyboard and a screen reader, not on screen */
.lotbi-sheet.lotbi-region-picker-sheet .lotbi-sheet-dismiss:not(:focus-visible) {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.lotbi-region-picker-sheet .lotbi-region-picker { display: flex; flex-direction: column; gap: 14px; padding: 0; color: var(--rp-text); }
.lotbi-region-picker-sheet .lotbi-region-picker-hd { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.lotbi-region-picker-sheet .lotbi-region-picker-title { margin: 0; color: var(--rp-text); font-size: 22px; line-height: 30px; font-weight: 800; letter-spacing: 0; }
.lotbi-region-picker-sheet .lotbi-region-picker-close {
  display: none; align-items: center; justify-content: center; flex: none; width: 44px; height: 44px; min-height: 44px; margin: -6px -10px -6px 0; padding: 0; border: 0; border-radius: 12px;
  background: transparent; color: var(--rp-text); cursor: pointer; box-shadow: none;
}
.lotbi-region-picker-sheet .lotbi-region-picker-searchbox {
  display: flex; align-items: center; gap: 10px; box-sizing: border-box; height: 50px; padding: 0 14px; border: 1px solid var(--rp-line2); border-radius: 14px; color: var(--rp-text3); background: var(--rp-surface);
}
.lotbi-region-picker-sheet .lotbi-region-picker-searchbox > svg { flex: none; }
.lotbi-region-picker-sheet .lotbi-region-picker-search {
  flex: 1; min-width: 0; min-height: 0; height: 100%; padding: 0; border: 0; border-radius: 0; outline: none; background: transparent; color: var(--rp-text); font: inherit; font-size: 16px; -webkit-appearance: none; appearance: none; box-shadow: none;
}
.lotbi-region-picker-sheet .lotbi-region-picker-search::placeholder { color: var(--rp-text3); opacity: 1; }
/* 아이폰 1.3 점검 10-26 (s179 캡처): opened from a 지역정보 screen the sheet sits inside .site-modal, whose input rule
   (body.chat-home-page :is(.site-modal …) :is(input:not(…)…), border·radius·padding·background) outweighed the rule above
   and drew a second box inside the search box. The input is borderless inside its box wherever the sheet is opened. */
.lotbi-sheet.lotbi-region-picker-sheet:not(#rp) .lotbi-region-picker-searchbox input.lotbi-region-picker-search {
  min-height: 0; height: 100%; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; line-height: normal;
}
.lotbi-region-picker-sheet .lotbi-region-picker-searchbox:focus-within { border-color: var(--rp-blue); }
/* 소유자 10-29 (내 아이 학교 칸과 같은 상자): one focus ring, the box's :focus-within. */
.lotbi-region-picker-sheet .lotbi-region-picker-searchbox input { -webkit-appearance: none; appearance: none; }
.lotbi-region-picker-sheet .lotbi-region-picker-searchbox input:is(:focus, :focus-visible) { outline: none !important; border: 0 !important; box-shadow: none !important; }
.lotbi-region-picker-sheet .lotbi-region-picker-crumb { display: flex; align-items: center; gap: 6px; min-height: 30px; font-size: 14px; font-weight: 600; }
.lotbi-region-picker-sheet .lotbi-region-picker-crumb-province {
  display: inline-flex; align-items: center; height: 30px; padding: 0 10px; border-radius: 6px; background: var(--rp-blue-weak); color: var(--rp-blue); font-size: 14px; font-weight: 600; white-space: nowrap;
}
.lotbi-region-picker-sheet .lotbi-region-picker-crumb-arrow { display: flex; color: var(--rp-text3); }
.lotbi-region-picker-sheet .lotbi-region-picker-step { margin: 0; color: var(--rp-text); font-size: 14px; font-weight: 600; white-space: nowrap; }
.lotbi-region-picker-sheet .lotbi-region-picker-crumb-back {
  margin: -7px 0 -7px auto; min-height: 44px; height: 44px; padding: 0 0 0 8px; border: 0; background: transparent; color: var(--rp-text3); font: inherit; font-size: 13px; font-weight: 500; white-space: nowrap; cursor: pointer; box-shadow: none;
}
.lotbi-region-picker-sheet :is(.lotbi-region-picker-crumb-province, .lotbi-region-picker-crumb-arrow, .lotbi-region-picker-crumb-back)[hidden] { display: none; }
.lotbi-region-picker-sheet .lotbi-region-picker-grid {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; max-height: min(46vh, 430px); overflow-y: auto; margin: 0; padding: 0;
}
.lotbi-region-picker-sheet .lotbi-region-picker-grid .lotbi-region-picker-chip {
  min-width: 0; min-height: 0; height: 48px; padding: 0 6px; border: 1px solid var(--rp-line); border-radius: 12px; background: var(--rp-surface);
  color: var(--rp-text); font: inherit; font-size: 15px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; cursor: pointer; box-shadow: none;
}
.lotbi-region-picker-sheet .lotbi-region-picker-grid .lotbi-region-picker-chip:hover { background: var(--rp-surface); border-color: var(--rp-blue); }
.lotbi-region-picker-sheet .lotbi-region-picker-grid .lotbi-region-picker-chip[aria-pressed="true"] { border-color: var(--rp-blue); background: var(--rp-blue); color: var(--rp-on-blue); }
.lotbi-region-picker-sheet .lotbi-region-picker-status { margin: 0; color: var(--rp-text2); font-size: 14px; line-height: 21px; }
.lotbi-region-picker-sheet .lotbi-region-picker-status:empty { display: none; }
.lotbi-region-picker-sheet .lotbi-region-picker-secondary { align-self: flex-start; min-height: 44px; padding: 0 16px; border: 1px solid var(--rp-line2); border-radius: 12px; background: var(--rp-surface); color: var(--rp-text); font: inherit; font-size: 14px; font-weight: 700; }
.lotbi-region-picker-sheet .lotbi-region-picker-secondary[hidden] { display: none; }
.lotbi-region-picker-sheet .lotbi-region-picker-actions { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 8px; margin-top: 4px; }
.lotbi-region-picker-sheet .lotbi-region-picker-actions[data-region-picker-buttons="1"] { grid-template-columns: minmax(0, 1fr); }
.lotbi-region-picker-sheet .lotbi-region-picker-locate {
  display: flex; align-items: center; justify-content: center; gap: 6px; height: 54px; min-height: 44px; padding: 0 8px; border: 1px solid var(--rp-line2); border-radius: 14px;
  background: var(--rp-surface); color: var(--rp-text); font: inherit; font-size: 16px; font-weight: 600; white-space: nowrap; cursor: pointer; box-shadow: none;
}
.lotbi-region-picker-sheet .lotbi-region-picker-locate > svg { flex: none; }
.lotbi-region-picker-sheet .lotbi-region-picker-locate[hidden] { display: none; }
.lotbi-region-picker-sheet .lotbi-region-picker-apply {
  height: 54px; min-height: 44px; padding: 0 8px; border: 0; border-radius: 14px; background: var(--rp-blue); color: var(--rp-on-blue); font: inherit; font-size: 16px; font-weight: 700; cursor: pointer;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; box-shadow: none;
}
.lotbi-region-picker-sheet .lotbi-region-picker-apply:disabled { opacity: .45; cursor: default; }
.lotbi-region-picker-sheet :is(.lotbi-region-picker-chip, .lotbi-region-picker-locate, .lotbi-region-picker-apply, .lotbi-region-picker-crumb-back, .lotbi-region-picker-close):focus-visible { outline: 3px solid var(--rp-blue); outline-offset: 2px; }
/* 아이폰 1.3 점검 10-26 (서울 구 목록): the sheet moves focus to the picked chip when it opens, and iOS counts that as
   :focus-visible -- a black ring sat around 「종로구」 on a touch screen. The pressed chip already shows the pick (blue), so a
   touch screen shows no ring on a chip; a keyboard (fine pointer) keeps it. */
@media (hover: none) and (pointer: coarse) {
  .lotbi-sheet.lotbi-region-picker-sheet .lotbi-region-picker-chip:is(:focus, :focus-visible) { outline: none !important; box-shadow: none !important; }
}
.lotbi-sheet-backdrop.lotbi-region-picker-backdrop { background: rgba(17, 20, 24, .48); }
body[data-site-theme="dark"] .lotbi-sheet-backdrop.lotbi-region-picker-backdrop,
html[data-site-theme-bootstrap="dark"] body:not([data-site-theme]) .lotbi-sheet-backdrop.lotbi-region-picker-backdrop { background: rgba(0, 0, 0, .6); }
@media (prefers-color-scheme: dark) {
  body[data-site-theme="system"] .lotbi-sheet-backdrop.lotbi-region-picker-backdrop,
  html[data-site-theme-bootstrap="system"] body:not([data-site-theme]) .lotbi-sheet-backdrop.lotbi-region-picker-backdrop { background: rgba(0, 0, 0, .6); }
}
/* PC: a window in the middle (no transform — geometry checks measure this element), four columns, a close button */
@media (min-width: 761px) {
  .lotbi-sheet.lotbi-region-picker-sheet[data-presentation="SHEET"] {
    top: 0; bottom: 0; left: calc(50% - min(280px, 50vw - 16px)); right: auto; width: min(560px, calc(100vw - 32px)); height: fit-content; margin: auto 0;
    padding: 24px; border-radius: 24px; box-shadow: 0 24px 60px rgba(0, 0, 0, .3);
  }
  .lotbi-sheet.lotbi-region-picker-sheet .lotbi-sheet-grabber { display: none; }
  .lotbi-region-picker-sheet .lotbi-region-picker { gap: 16px; }
  .lotbi-region-picker-sheet .lotbi-region-picker-close { display: flex; }
  .lotbi-region-picker-sheet .lotbi-region-picker[data-region-picker-level="district"] .lotbi-region-picker-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* ── 병원·응급실·약국 (시안 01 · 03) ── */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen { gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-where {
  flex-wrap: nowrap; gap: 8px; min-height: 0; padding: 8px 8px 8px 14px; border: 1px solid var(--ri-line); border-radius: 16px; background: var(--ri-surface);
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-where[data-medical-where="none"] { border-color: var(--ri-line); background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-where-pin svg { width: 20px; height: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-where-text { display: flex; flex: 0 1 auto; flex-wrap: nowrap; align-items: center; gap: 8px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-where-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 16px; line-height: 24px; font-weight: 800; letter-spacing: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-where-change {
  margin-left: auto; min-height: 44px; height: 44px; padding: 0 12px; border-color: var(--ri-line-strong); border-radius: 12px; font-size: 14px; font-weight: 700;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-where-note { margin-top: 0; font-size: 13px; line-height: 19px; color: var(--ri-text-2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-kind-row { gap: 4px; padding: 4px; border-radius: 14px; background: var(--d-seg); max-width: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-kind-row .medical-kind {
  min-height: 0; height: 44px; padding: 0 4px; border-radius: 11px; color: var(--ri-text-2); font-size: 15px; font-weight: 700;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-kind-row .medical-kind[aria-pressed="true"] {
  background: var(--ri-surface); color: var(--ri-blue-text) !important; font-weight: 800; box-shadow: 0 1px 3px var(--d-shadow);
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-filters { flex-wrap: nowrap; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-specialty-select {
  gap: 4px; min-height: 0; height: 44px; padding: 0 12px 0 14px; border-color: var(--ri-line-strong); border-radius: 12px; font-size: 14px; font-weight: 700;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-specialty-select svg { width: 16px; height: 16px; color: var(--ri-text-2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-switch {
  gap: 8px; min-height: 0; height: 44px; padding: 0 14px 0 8px; border: 1px solid var(--ri-line-strong); border-radius: 999px; background: var(--ri-surface);
  color: var(--ri-text); font-size: 14px; font-weight: 700;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-switch:has(.medical-switch-input:checked) { border-color: var(--d-blue-line); background: var(--ri-blue-soft); color: var(--ri-blue-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-switch-input { width: 36px; height: 22px; border-radius: 11px; background: var(--ri-line-strong); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-switch-input::after { left: 2px; top: 2px; width: 18px; height: 18px; border-radius: 9px; background: #FFFFFF; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-switch-input:checked { background: var(--ri-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-switch-input:checked::after { left: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-count-row { flex-wrap: nowrap; align-items: baseline; gap: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-count { font-size: 18px; line-height: 26px; font-weight: 800; letter-spacing: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-count-number { color: var(--ri-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-sort { color: var(--d-muted); font-size: 13px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-results { gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-place {
  grid-template-columns: 76px minmax(0, 1fr) 48px; gap: 12px; padding: 14px; border: 0; border-radius: 18px; background: var(--ri-surface);
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-place[data-medical-card="emergency"] { row-gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-media { width: 76px; height: 76px; border-radius: 14px; background: var(--d-photo); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-tile:not([data-medical-tile="pharmacy"]) { background: var(--d-tile-red); color: var(--d-tile-red-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-tile svg { width: 38px; height: 38px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-tile .medical-tile-body { fill: var(--d-tile-red-fill); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-tile .medical-tile-door { fill: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-body { gap: 6px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-place[data-medical-card="emergency"] .medical-card-body { gap: 4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-place-name { font-size: 17px; line-height: 24px; font-weight: 800; letter-spacing: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-distance { margin-left: 2px; color: var(--d-muted); font-size: 13px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-badges { gap: 4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-badge {
  min-height: 0; padding: 2px 6px; border-radius: 6px; font-size: 12px; line-height: 18px; font-weight: 800;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-info { color: var(--ri-text-2); font-size: 13px; line-height: 19px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-hours { white-space: normal; }
/* Google 사진 표기 (Google 약관상 필수): 한 줄, 작게 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-photo-attribution {
  overflow: hidden; color: var(--d-muted); font-size: 11px; line-height: 15px; white-space: nowrap; text-overflow: ellipsis;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-photo-attribution a { color: inherit; text-decoration: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-actions { gap: 6px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-actions .ri-icon-action,
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-icon-action { width: 48px; height: 48px; min-width: 48px; border-radius: 24px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-icon-action svg { width: 20px; height: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-icon-map { border: 1px solid var(--ri-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-icon-map-image { width: 24px; height: 24px; border-radius: 6px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ri-icon-phone.is-red { background: var(--ri-red-soft); color: var(--ri-red); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-er { gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-beds {
  gap: 14px; min-height: 0; padding: 10px 14px; border-radius: 12px; background: var(--ri-sub); color: var(--ri-text-2); flex-wrap: nowrap;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-beds-label { font-size: 16px; line-height: 24px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-beds-time { font-size: 13px; line-height: 19px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-beds[data-medical-beds="AVAILABLE"] { background: var(--ri-green-soft); color: var(--ri-green); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-beds[data-medical-beds="AVAILABLE"] .medical-card-beds-label { font-size: 12px; line-height: 18px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-beds-value { font-size: 28px; line-height: 32px; font-weight: 800; letter-spacing: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-beds[data-medical-beds="FULL"] { background: var(--ri-red-soft); color: var(--ri-red-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-beds[data-medical-beds="FULL"] .medical-card-beds-label { font-size: 18px; line-height: 26px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-notice {
  padding: 10px 14px; border-radius: 12px; background: var(--ri-amber-soft); color: var(--d-notice); font-size: 13px; line-height: 19px;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-more {
  min-height: 0; height: 48px; border: 1px solid var(--ri-line-strong); border-radius: 14px; font-size: 15px; font-weight: 700; max-width: none; align-self: stretch;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-foot { padding: 0 4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-foot-source { color: var(--d-muted); font-size: 13px; line-height: 19px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-foot-more { min-height: 44px; margin: 0; padding: 0; font-size: 13px; font-weight: 800; color: var(--ri-blue-text); }
@media (max-width: 380px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-place { grid-template-columns: 64px minmax(0, 1fr) 48px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-media { width: 64px; height: 64px; }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-place:not([data-medical-card="emergency"]) { grid-template-areas: "media body actions"; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-place-name { display: flex; align-items: baseline; gap: 6px; flex-wrap: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-name { flex: 0 1 auto; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-distance { flex: none; margin-left: 0; }

/* ── 전기차 충전소 (시안 05) ── */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface { display: flex; flex-direction: column; gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface > * { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-where { padding: 8px 8px 8px 14px; gap: 8px; border-radius: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-where-place { display: flex; flex: 1 1 auto; align-items: center; gap: 8px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-where-place > svg { width: 20px; height: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-where-text { flex-wrap: nowrap; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-where-label { min-width: 0; overflow: hidden; text-overflow: ellipsis; font-size: 16px; line-height: 24px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-region-change { height: 44px; min-height: 44px; padding: 0 12px; font-size: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-controls { display: flex; flex-direction: column; gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-segment { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; padding: 4px; border: 0; border-radius: 14px; background: var(--d-seg); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-segment-option { min-height: 0; height: 44px; padding: 0 4px; border-radius: 11px; color: var(--ri-text-2); font-size: 15px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-segment-option[aria-pressed="true"] { background: var(--ri-surface); color: var(--ri-blue-text); font-weight: 800; box-shadow: 0 1px 3px var(--d-shadow); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-filter-row { gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-available { gap: 8px; min-height: 0; height: 44px; padding: 0 12px 0 8px; font-size: 14px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-available[aria-checked="true"] { border-color: var(--d-blue-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-switch { width: 36px; height: 22px; border-radius: 11px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-switch::after { left: 2px; top: 2px; width: 18px; height: 18px; border-radius: 9px; background: #FFFFFF; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-available[aria-checked="true"] .ev-switch::after { left: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-radius { gap: 4px; min-height: 0; height: 44px; padding: 0 12px 0 14px; border-radius: 12px; font-size: 14px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-radius-chevron { width: 16px; height: 16px; color: var(--ri-text-2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-count-row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-status { margin: 0; color: var(--ri-text); font-size: 18px; line-height: 26px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-count { color: var(--ri-blue); font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-sort { color: var(--d-muted); font-size: 13px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-results { gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-card { display: flex; flex-direction: column; gap: 10px; padding: 16px; border: 0; border-radius: 18px; background: var(--ri-surface); box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-card > * { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-card-top { display: flex; align-items: flex-start; gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-card-heading { display: block; flex: 1; min-width: 0; padding: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-card-name { font-size: 17px; line-height: 25px; font-weight: 800; overflow-wrap: normal; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-card-distance { color: var(--d-muted); font-size: 13px; line-height: 19px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ri-icon-map.is-lg { width: 56px; height: 56px; min-width: 56px; border-radius: 16px; border: 1px solid var(--ri-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ri-icon-map.is-lg .ri-icon-map-image { width: 32px; height: 32px; border-radius: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-card-state { gap: 10px; min-height: 0; padding: 10px 14px; border-radius: 12px; font-size: 16px; line-height: 24px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-card-state::before { width: 22px; height: 22px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-card-spec { color: var(--ri-text); font-size: 14px; line-height: 21px; overflow-wrap: normal; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-card-where { color: var(--d-muted); font-size: 13px; line-height: 19px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-more[data-ev-auto-more]:not(:focus-visible) {
  position: absolute; width: 1px; height: 1px; min-height: 0; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-source-row { padding: 0 4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-source-line { color: var(--d-muted); font-size: 13px; line-height: 19px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-source-more { min-height: 44px; padding: 0; font-size: 13px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-where-text { display: flex; flex-direction: row; align-items: center; }

/* ── 지역뉴스 1주일 (시안 06) ── */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) {
  --d-news-violet: #4338CA; --d-news-violet-soft: #EEEDFF; --d-news-teal: #0E7490; --d-news-teal-soft: #E1F6FB; --d-row-line: #F2F4F6;
}
body[data-site-theme="dark"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02),
html[data-site-theme-bootstrap="dark"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) {
  --d-news-violet: #A5B4FC; --d-news-violet-soft: #272A4A; --d-news-teal: #67E8F9; --d-news-teal-soft: #123A44; --d-row-line: #2A2E34;
}
@media (prefers-color-scheme: dark) {
  body[data-site-theme="system"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02),
  html[data-site-theme-bootstrap="system"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) {
    --d-news-violet: #A5B4FC; --d-news-violet-soft: #272A4A; --d-news-teal: #67E8F9; --d-news-teal-soft: #123A44; --d-row-line: #2A2E34;
  }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news { gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-screen-title { font-size: 26px; line-height: 34px; font-weight: 800; letter-spacing: -0.5px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-bar { display: grid; grid-template-columns: minmax(0, 1fr) 150px; gap: 14px 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-region {
  gap: 6px; min-height: 0; height: 48px; max-width: none; padding: 0 12px; border: 1px solid var(--ri-line); border-radius: 14px; font-size: 16px; line-height: 24px; font-weight: 800;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-region .lotbi-news-glyph-pin { width: 20px; height: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-glyph-down { width: 16px; height: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-periods { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; min-height: 0; width: 150px; padding: 4px; border-radius: 14px; background: var(--d-seg); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-period { min-width: 0; min-height: 0; height: 40px; padding: 0; border-radius: 11px; font-size: 15px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-period[aria-pressed="true"] { font-weight: 800; box-shadow: 0 1px 3px var(--d-shadow); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-category-button { gap: 4px; min-height: 0; height: 44px; padding: 0 12px 0 14px; border-radius: 12px; font-size: 14px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-rows { border: 0; border-radius: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-row { border-top: 0; border-bottom: 1px solid var(--d-row-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-row:last-child { border-bottom: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-item { display: flex; align-items: flex-start; gap: 12px; min-height: 0; padding: 14px 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-thumb { width: 84px; height: 62px; border-radius: 10px; background: var(--ri-blue-soft); color: var(--ri-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-thumb .lotbi-news-glyph-paper { width: 26px; height: 26px; stroke-width: 1.8; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-thumb[data-news-thumb="photo"] { background: var(--d-photo); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-item-copy { display: flex; flex: 1; flex-direction: column; align-items: flex-start; gap: 4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-tag { min-height: 0; padding: 1px 6px; border-radius: 6px; font-size: 12px; line-height: 18px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-tag[data-news-tone="violet"] { background: var(--d-news-violet-soft); color: var(--d-news-violet); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-tag[data-news-tone="amber"] { background: var(--ri-amber-soft); color: var(--ri-amber); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-tag[data-news-tone="teal"] { background: var(--d-news-teal-soft); color: var(--d-news-teal); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-item-title { font-size: 15px; line-height: 21px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-item-meta { color: var(--d-muted); font-size: 12px; line-height: 17px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-item > .lotbi-news-glyph-open { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-days { gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-day { gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-day-title { margin: 4px 0 0; font-size: 17px; line-height: 25px; font-weight: 800; }
/* 「검색: NAVER · 기사: 각 언론사」(NAVER 검색 API 출처 표기): 작게, 한 줄 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-attribution-line { color: var(--d-muted); font-size: 11px; line-height: 15px; padding: 0 4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-news .lotbi-news-thumb[data-news-thumb="default"]::before {
  width: 26px; height: 26px; background: var(--ri-blue);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='14' height='16' rx='2'/%3E%3Cpath d='M17 8h3v10a2 2 0 0 1-2 2H6'/%3E%3Cpath d='M7 8.5h6M7 12h6M7 15.5h4'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='14' height='16' rx='2'/%3E%3Cpath d='M17 8h3v10a2 2 0 0 1-2 2H6'/%3E%3Cpath d='M7 8.5h6M7 12h6M7 15.5h4'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ── 지하철 역 화면 (시안 08) ── */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .site-subway-modal:has(.subway-station) .site-modal-header h2 {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station { display: flex; flex-direction: column; gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station > *,
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station :is(.subway-realtime, .subway-next-holder, .subway-station-body) { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-station-body,
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-next-holder { display: flex; flex-direction: column; gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-station-head { display: flex; align-items: center; gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-station-tile { width: 40px; height: 40px; flex: 0 0 40px; border-radius: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-station-name { margin: 0; font-size: 28px; line-height: 36px; font-weight: 800; letter-spacing: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-line-row { display: flex; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-line-chip {
  gap: 8px; min-height: 0; height: 44px; padding: 0 14px 0 8px; border: 1px solid var(--ri-line); border-radius: 999px; background: var(--ri-sub); color: var(--ri-text-2); font-size: 15px; font-weight: 700;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-line-chip[aria-pressed="true"] { border: 2px solid var(--subway-line-color); background: var(--ri-surface); color: var(--ri-text); font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-line-chip-name { font-size: 15px; line-height: 22px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-line-mark { width: 26px; height: 26px; min-width: 26px; border-radius: 13px; font-size: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-line-mark.is-word { width: auto; height: 24px; padding: 0 6px; border-radius: 8px; font-size: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-dir-seg { gap: 4px; padding: 4px; border-radius: 16px; background: var(--d-seg); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-dir { min-height: 0; height: 60px; border-radius: 13px; gap: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-dir-heading { font-size: 17px; line-height: 24px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-dir-sub { font-size: 12px; line-height: 17px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-next-card { display: flex; flex-direction: column; gap: 12px; padding: 18px; border-radius: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-next-card > * { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-next-label { font-size: 14px; line-height: 20px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-next-when { font-size: 32px; line-height: 38px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-next-where { font-size: 16px; line-height: 23px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-track { margin-top: 6px; gap: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-track-train { width: 30px; height: 30px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-track-here { width: 22px; height: 22px; border-width: 4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-track-labels { font-size: 13px; line-height: 19px; font-weight: 700; color: var(--ri-text-2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-next-foot { gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-checked { color: var(--d-muted); font-size: 13px; line-height: 19px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-refresh { min-height: 0; height: 44px; padding: 0 14px; border: 1px solid var(--d-blue-line); border-radius: 12px; background: var(--ri-surface); color: var(--ri-blue-text); font-size: 14px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-next-row { gap: 12px; margin: 0; padding: 14px 16px; border: 0; border-radius: 16px; background: var(--ri-surface); min-height: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-next-row-label { width: 44px; flex: none; color: var(--d-muted); font-size: 13px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-next-row-where { flex: 1; font-size: 15px; line-height: 22px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-next-row-when { color: var(--ri-blue-text); font-size: 16px; line-height: 23px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-average { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 16px; border: 0; border-radius: 18px; background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-average-head { display: flex; align-items: baseline; justify-content: space-between; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-average-title { margin: 0; font-size: 17px; line-height: 25px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-average-basis { color: var(--d-muted); font-size: 12px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-average-rows { display: grid; gap: 8px; margin: 0; padding: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-average-row { display: grid; grid-template-columns: 70px minmax(0, 1fr) 44px; align-items: center; gap: 10px; min-height: 0; padding: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-average-label { color: var(--ri-text-2); font-size: 14px; line-height: 20px; font-weight: 400; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-average-value { color: var(--ri-text-2); font-size: 14px; line-height: 20px; font-weight: 400; text-align: right; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-average-bar { height: 10px; border-radius: 5px; background: var(--d-seg); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-average-fill { height: 10px; border-radius: 5px; background: var(--d-blue-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-average-row[data-now="true"] :is(.subway-average-label, .subway-average-value) { color: var(--ri-blue-text); font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-average-row[data-now="true"] .subway-average-fill { background: var(--ri-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-foot { padding: 0 4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-foot-line { color: var(--d-muted); font-size: 13px; line-height: 19px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-more { min-height: 44px; padding: 0; font-size: 13px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) { --d-train-card: #F0FBF4; --d-train-line: #A6E6BE; --d-train: #00A84D; }
body[data-site-theme="dark"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02),
html[data-site-theme-bootstrap="dark"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) { --d-train-card: #133A24; --d-train-line: #1F6B3E; --d-train: #4ADE80; }
@media (prefers-color-scheme: dark) {
  body[data-site-theme="system"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02),
  html[data-site-theme-bootstrap="system"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) { --d-train-card: #133A24; --d-train-line: #1F6B3E; --d-train: #4ADE80; }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-next-card { border: 1px solid var(--d-train-line); background: var(--d-train-card); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-track-line::before { background: var(--d-train); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-track-train { background: var(--d-train); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station .subway-track-here { border-color: var(--d-train); }

/* ── 온누리상품권·지역화폐 (시안 09) ── */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) { --d-chicken-bg: #FFEFE3; --d-chicken-word: #C2410C; --d-snack-bg: #FFEBEC; --d-snack-word: #B42318; }
body[data-site-theme="dark"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02),
html[data-site-theme-bootstrap="dark"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) { --d-chicken-bg: #3A2516; --d-chicken-word: #FDBA8C; --d-snack-bg: #3A1D1D; --d-snack-word: #FCA5A5; }
@media (prefers-color-scheme: dark) {
  body[data-site-theme="system"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02),
  html[data-site-theme-bootstrap="system"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) { --d-chicken-bg: #3A2516; --d-chicken-word: #FDBA8C; --d-snack-bg: #3A1D1D; --d-snack-word: #FCA5A5; }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .voucher-hub { display: flex; flex-direction: column; gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .voucher-hub > * { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .voucher-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; padding: 4px; border: 0; border-radius: 14px; background: var(--d-seg); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .voucher-tab { min-height: 0; height: 44px; padding: 0 4px; border: 0; border-radius: 11px; background: transparent; color: var(--ri-text-2); font-size: 15px; font-weight: 700; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .voucher-tab.is-active { background: var(--ri-surface); color: var(--ri-blue-text); font-weight: 800; box-shadow: 0 1px 3px var(--d-shadow); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface { display: flex; flex-direction: column; gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface > * { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface [data-onnuri-design-hidden] { display: none !important; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-filters { display: flex; flex-direction: column; gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-region-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-region-field.is-wide { grid-column: auto; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-select {
  min-height: 0; height: 48px; padding: 0 34px 0 12px; border: 1px solid var(--ri-line-strong); border-radius: 12px; background-color: var(--ri-surface);
  background-position: right 12px center; background-size: 16px 16px; color: var(--ri-text); font-size: 15px; font-weight: 700;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-pill { gap: 4px; min-height: 0; height: 44px; padding: 0 12px 0 14px; border: 1px solid var(--ri-line-strong); border-radius: 12px; background: var(--ri-surface); font-size: 14px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-pill-text { font-size: 14px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-status { color: var(--ri-text); font-size: 18px; line-height: 26px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-count-number { color: var(--ri-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-count-order { color: var(--d-muted); font-size: 13px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-results { grid-template-columns: minmax(0, 1fr); gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card { grid-template-columns: minmax(0, 1fr) 96px; gap: 12px; padding: 16px; border: 0; border-radius: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-body { gap: 6px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-title { font-size: 17px; line-height: 25px; font-weight: 800; letter-spacing: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-meta { color: var(--ri-text-2); font-size: 13px; line-height: 19px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-badge { margin: 0; font-size: 12px; line-height: 18px; font-weight: 800; letter-spacing: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface :is(.onnuri-card-badge.is-market, .onnuri-card-badge.is-region) { padding: 2px 7px; border-radius: 6px; background: var(--ri-amber-soft); color: var(--ri-amber); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-badge.is-verified { font-size: 13px; line-height: 19px; font-weight: 700; color: var(--ri-green); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-badge.is-verified::before { width: 14px; height: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-place { color: var(--ri-text-2); font-size: 13px; line-height: 19px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card[data-address-kind="VERIFIED"] .onnuri-card-place,
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card[data-address-kind="OFFICIAL"] .onnuri-card-place { color: var(--ri-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-distance { font-size: 13px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-icons { gap: 6px; margin-top: 2px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-photo { gap: 4px; width: 96px; height: 96px; border-radius: 16px; background: var(--d-photo); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-photo-icon { width: 40px; height: 40px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-photo-word { font-size: 12px; line-height: 17px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-photo[data-tile-kind="CHICKEN"] { background: var(--d-chicken-bg); --onnuri-tile-word: var(--d-chicken-word); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-photo[data-tile-kind="SNACK"] { background: var(--d-snack-bg); --onnuri-tile-word: var(--d-snack-word); }
/* 시안 09's two-colour pictures for 치킨 and 분식 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-photo[data-tile-kind="CHICKEN"] .onnuri-card-photo-icon {
  -webkit-mask: none; mask: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.5 4.5a5 5 0 0 1 2.8 8.7l-4.6 4.6a3 3 0 0 1-4.2 0l-1.3-1.3a3 3 0 0 1 0-4.2l4.6-4.6A5 5 0 0 1 14.5 4.5z' fill='%23FFC9A3' stroke='%23F76B15' stroke-width='1.6'/%3E%3Cpath d='M8.2 16.2l-3.4 3.4M4 18.4l1.6 1.6' stroke='%23F76B15' stroke-width='1.6'/%3E%3C/svg%3E") center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-card-photo[data-tile-kind="SNACK"] .onnuri-card-photo-icon {
  -webkit-mask: none; mask: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11h16a8 8 0 0 1-16 0z' fill='%23FFC9CB' stroke='%23E5484D' stroke-width='1.6'/%3E%3Cpath d='M9 4c0 2 2 2 2 4M13 4c0 2 2 2 2 4' stroke='%23E5484D' stroke-width='1.6'/%3E%3C/svg%3E") center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-more[data-onnuri-auto-more]:not(:focus-visible) {
  position: absolute; width: 1px; height: 1px; min-width: 0; min-height: 0; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-foot { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-foot-summary { min-height: 44px; padding: 0 4px; color: var(--d-muted); font-size: 13px; line-height: 19px; font-weight: 400; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .onnuri-surface .onnuri-foot-more { font-size: 13px; font-weight: 800; }

/* ── 부동산 실거래가 (시안 10): replaced by the 시안 03 block (「시안 03: 부동산 실거래가」) ── */

/* ── 내 아이 학교·유치원 (시안 11 · 12) ── */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) { --d-kid-violet: #8B5CF6; --d-kid-violet-soft: #F2ECFF; --d-kid-amber-soft: #FFF5D9; --d-kid-dash: #B0B8C1; --d-bowl-soft: #FFEFE3; }
body[data-site-theme="dark"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02),
html[data-site-theme-bootstrap="dark"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) { --d-kid-violet: #A78BFA; --d-kid-violet-soft: #2A2140; --d-kid-amber-soft: #3A2E12; --d-kid-dash: #4A5058; --d-bowl-soft: #3A2516; }
@media (prefers-color-scheme: dark) {
  body[data-site-theme="system"] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02),
  html[data-site-theme-bootstrap="system"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) { --d-kid-violet: #A78BFA; --d-kid-violet-soft: #2A2140; --d-kid-amber-soft: #3A2E12; --d-kid-dash: #4A5058; --d-bowl-soft: #3A2516; }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-detail { display: flex; flex-direction: column; gap: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-detail > h3 { margin: 0; color: var(--ri-text); font-size: 26px; line-height: 34px; font-weight: 800; letter-spacing: -0.5px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .consumer-life-detail > h3:focus { outline: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild,
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-view,
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-body { display: flex; flex-direction: column; gap: 14px; margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-status:empty { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-kids { display: flex; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-kid {
  flex: 1; min-width: 0; height: 64px; min-height: 0; gap: 10px; padding: 0 12px; border: 1px solid var(--ri-line); border-radius: 16px; background: var(--ri-surface); box-shadow: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-kid[aria-pressed="true"] { border: 2px solid var(--d-kid-violet); padding: 0 11px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-kid .lotbi-mychild-tile { width: 40px; height: 40px; flex: 0 0 40px; border-radius: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-kid .lotbi-mychild-tile.is-violet { background: var(--d-kid-violet-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-kid .lotbi-mychild-tile.is-amber { background: var(--d-kid-amber-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-kid-name { font-size: 15px; line-height: 21px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-kid-school { color: var(--d-muted); font-size: 12px; line-height: 17px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-kid-add { flex: 0 0 56px; width: 56px; height: 64px; min-height: 0; border: 1px dashed var(--d-kid-dash); border-radius: 16px; background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-box { margin: 0; border: 0; box-shadow: none; background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-today { display: flex; flex-direction: column; gap: 12px; padding: 18px; border-radius: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-box-head { display: flex; align-items: center; justify-content: space-between; margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-today .lotbi-mychild-box-head h5 { margin: 0; font-size: 18px; line-height: 26px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-box-date { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-alert-tag { gap: 0; min-height: 0; padding: 4px 8px; border-radius: 8px; background: var(--ri-red-soft); color: var(--ri-red-text); font-size: 13px; line-height: 19px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-alert-tag > svg { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-alert-tag.is-clear { background: var(--ri-green-soft); color: var(--ri-green); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-meal { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-today .lotbi-mychild-dishes { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-today .lotbi-mychild-dish { display: flex; align-items: center; justify-content: space-between; min-height: 0; padding: 0; border: 0; font-size: 16px; line-height: 23px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-today .lotbi-mychild-dish-name { font-size: 16px; line-height: 23px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-today .lotbi-mychild-dish.is-allergen .lotbi-mychild-dish-name { color: var(--ri-red-text); font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-today .lotbi-mychild-allergen-tag { min-height: 0; padding: 2px 6px; border-radius: 6px; background: var(--ri-red-soft); color: var(--ri-red-text); font-size: 12px; line-height: 18px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-tile-button {
  display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; box-sizing: border-box; height: 96px; min-height: 0; padding: 14px; border: 0; border-radius: 18px; background: var(--ri-surface); box-shadow: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-tile-button .lotbi-mychild-tile { width: 40px; height: 40px; flex: none; border-radius: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-tile-button .lotbi-mychild-tile.is-amber { background: var(--d-bowl-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-tile-label { font-size: 16px; line-height: 23px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-upcoming { display: flex; flex-direction: column; gap: 10px; padding: 14px 16px; border-radius: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-upcoming > h5 { margin: 0; font-size: 16px; line-height: 23px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-upcoming-list { display: flex; flex-direction: column; gap: 10px; margin: 0; padding: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-upcoming-list > li { display: flex; align-items: center; gap: 12px; min-height: 0; padding: 0; border: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-upcoming .lotbi-mychild-date { box-sizing: border-box; width: 48px; height: auto; min-height: 0; flex: none; padding: 6px 0; border-radius: 12px; background: var(--ri-sub); color: var(--ri-text-2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-upcoming .is-next .lotbi-mychild-date { background: var(--d-kid-violet-soft); color: var(--ri-violet); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-upcoming .lotbi-mychild-date > :first-child { font-size: 11px; line-height: 16px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-upcoming .lotbi-mychild-date > :last-child { font-size: 20px; line-height: 22px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-upcoming-name { font-size: 15px; line-height: 22px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-about { margin: 0; padding: 0; border: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-about > summary { display: flex; align-items: center; justify-content: space-between; min-height: 44px; padding: 0 4px; color: var(--d-muted); font-size: 13px; line-height: 19px; font-weight: 400; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-about-more { color: var(--ri-blue-text); font-size: 13px; font-weight: 800; }

/* 아이 추가 (시안 12): the screen's own 〈 내 아이 학교·유치원 is the only back line */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal:has(.lotbi-mychild-back) > .site-modal-header { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-back {
  display: inline-flex; align-items: center; align-self: flex-start; gap: 4px; width: auto; min-height: 44px; margin: 0 0 0 -6px; padding: 0 6px 0 0;
  border: 0; background: transparent; color: var(--ri-text-2); font-size: 15px; line-height: 22px; font-weight: 700;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-back > svg { width: 22px; height: 22px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-title { margin: 0; font-size: 26px; line-height: 34px; font-weight: 800; letter-spacing: -0.5px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-steps { display: flex; align-items: center; gap: 8px; margin: 0; padding: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-step { gap: 6px; font-size: 14px; line-height: 20px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-step[data-state="done"] { font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-step + .lotbi-mychild-step { gap: 6px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-step + .lotbi-mychild-step::before { height: 2px; margin-right: 2px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-step-dot { width: 24px; height: 24px; flex: 0 0 24px; font-size: 13px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-step-dot svg { width: 14px; height: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-save { display: flex; flex-direction: column; gap: 14px; margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-chosen { display: flex; align-items: center; gap: 12px; margin: 0; padding: 12px 12px 12px 14px; border: 0; border-radius: 18px; background: var(--ri-surface); box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-chosen .lotbi-mychild-tile { width: 48px; height: 48px; flex: 0 0 48px; border-radius: 14px; background: var(--d-kid-violet-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-chosen-text { display: flex; flex: 1; flex-direction: column; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-chosen-text > strong { font-size: 17px; line-height: 25px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-chosen .lotbi-mychild-card-line { color: var(--d-muted); font-size: 13px; line-height: 19px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-change { min-height: 0; height: 44px; padding: 0 12px; border: 1px solid var(--ri-line-strong); border-radius: 12px; font-size: 14px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) :is(.lotbi-mychild-names, .lotbi-mychild-allergens) { display: flex; flex-direction: column; gap: 8px; margin: 0; padding: 0; border: 0; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-legend { display: flex; align-items: baseline; justify-content: space-between; float: none; width: 100%; margin: 0 0 8px; padding: 0; font-size: 16px; line-height: 23px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-count { position: static; width: auto; height: auto; color: var(--ri-blue-text); font-size: 13px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-names .lotbi-mychild-chips { display: flex; flex-wrap: nowrap; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-names .lotbi-mychild-chip { flex: none; min-height: 0; height: 44px; padding: 0 16px; border: 1px solid var(--ri-line-strong); border-radius: 999px; background: var(--ri-surface); color: var(--ri-text); font-size: 15px; font-weight: 700; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-names .lotbi-mychild-chip[aria-pressed="true"] { border-color: var(--ri-blue); background: var(--ri-blue); color: #FFFFFF; font-weight: 800; }
@media (max-width: 359px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-names .lotbi-mychild-chips { flex-wrap: wrap; }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-allergen-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-allergen { height: 48px; min-height: 0; border: 1px solid var(--ri-line-strong); border-radius: 12px; background: var(--ri-surface); color: var(--ri-text); font-size: 15px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-allergen:has(input:checked) { border-color: var(--ri-blue); background: var(--ri-blue); color: #FFFFFF; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-allergen-text { gap: 4px; font-size: 15px; line-height: 21px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-allergen-mark { font-weight: inherit; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-more { align-self: center; min-height: 0; height: 44px; gap: 4px; color: var(--ri-blue-text); font-size: 14px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-more > svg { width: 16px; height: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-consent { display: flex; align-items: center; gap: 10px; min-height: 52px; margin: 0; padding: 12px 14px; border: 0; border-radius: 14px; background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-consent-check { display: flex; flex: 1; align-items: center; gap: 10px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-consent-check > input { width: 22px; height: 22px; flex: none; margin: 0; accent-color: var(--ri-blue); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-consent-line { font-size: 14px; line-height: 20px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-consent .lotbi-mychild-link { min-height: 44px; padding: 0; font-size: 13px; font-weight: 800; color: var(--ri-blue-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-submit { min-height: 0; height: 56px; border-radius: 16px; font-size: 17px; font-weight: 800; }

/* 응급실 병원 공지: 한 줄 (시안 03) */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .medical-surface.medical-screen .medical-card-notice { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
/* 내 아이: 학교 이름은 줄이지 않고, 아이 카드를 다시 누르면 여는 메뉴 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-kid { height: auto; min-height: 64px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-kid-text { min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-kid :is(.lotbi-mychild-kid-name, .lotbi-mychild-kid-school) { overflow: visible; white-space: normal; text-overflow: clip; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-entry-menu:not([hidden]) {
  display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 12px; border-radius: 16px; background: var(--ri-surface);
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-entry-menu :is(.lotbi-mychild-actions, .lotbi-mychild-links) { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .lotbi-mychild-entry-menu :is(button, a) { min-height: 44px; }
/* 1280: a screen inside 지역정보 — its 〈 line, title and body share one left edge.
   시안 03: .pcwrap is 1072 wide with 48px sides, so a screen's body is 976 (was 760 in 시안 01·02). */
@media (min-width: 761px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal:not([data-life-view="life"]) { max-width: 976px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal:not([data-life-view="life"]) .site-modal-content { width: 100%; max-width: none; margin: 0; padding: 0; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) > .site-modal:not([data-life-view="life"]) .site-modal-content > * { max-width: none; margin-left: 0; margin-right: 0; }
}
@media (min-width: 761px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-controls { display: flex; flex-direction: column; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .ev-surface .ev-segment { width: 100%; box-sizing: border-box; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-02) .subway-station :is(.subway-station-body, .subway-realtime, .subway-next-holder, .subway-average, .subway-next-card, .subway-next-row) { width: 100%; max-width: none; box-sizing: border-box; grid-column: 1 / -1; }
}

/* ══ 시안 03 최종본 (owner confirmed 2026-10-17) ═════════════════════════════════════════════
   Values copied from the 시안 board (evidence/regional-info-design-03/source/board.html).
   ri3-* pieces are built by site-regional-info-ui.js. ":not(#ri):not(#ri-03)" lifts them over the older
   시안 01·02 rules above. Each screen keeps its own block below, between its START/END markers. */
.consumer-workspace[data-workspace="life"] {
  --ri3-bg: #F2F4F6; --ri3-surface: #FFFFFF; --ri3-surface2: #F2F4F6; --ri3-line: #E5E8EB; --ri3-line2: #D1D6DB;
  --ri3-text: #191F28; --ri3-text2: #4E5968; --ri3-text3: #5F6B7A;
  --ri3-primary: #2563EB; --ri3-primary-press: #1D4ED8; --ri3-primary-weak: #EBF2FF; --ri3-on-primary: #FFFFFF;
  --ri3-green: #0E9F55; --ri3-green-weak: #E7F6EE; --ri3-red: #E5484D; --ri3-red-weak: #FDECEC; --ri3-amber: #C26A00; --ri3-amber-weak: #FFF3E0;
  /* APPLE-S190-CONTRAST-01 (애플 담당 s190 실측: 전기차 「급속 2대 · 완속 5대」·팝업 「진행 중」 3.4): words in these tones need 4.5:1 —
     green 5.4, red 5.4, amber 5.9 on white (4.9+ on #F2F4F6). Dots, icons and fills keep the brighter tones. */
  --ri3-green-text: #0B7A42; --ri3-red-text: #C62F35; --ri3-amber-text: #9A5200;
  --ri3-scrim: rgba(17, 20, 24, .48); --ri3-shadow: 0 1px 2px rgba(17, 20, 24, .04), 0 2px 8px rgba(17, 20, 24, .04);
  --ri3-seg-bg: #E9ECEF; --ri3-seg-on: #FFFFFF;
  --ri3-map-bg: #EEF1F4; --ri3-map-road: #FFFFFF; --ri3-map-river: #CFE3F5; --ri3-map-park: #DCEFD9; --ri3-map-block: #E3E7EB;
  --ri3-c1: #2563EB; --ri3-c2: #C26A00; --ri3-c3: #7C3AED; --ri3-c4: #0E9F55; --ri3-c5: #DB2777; --ri3-c6: #0891B2; --ri3-c7: #8B95A1;
}
body[data-site-theme="dark"] .consumer-workspace[data-workspace="life"],
html[data-site-theme-bootstrap="dark"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"] {
  --ri3-bg: #0F1114; --ri3-surface: #1A1D21; --ri3-surface2: #24282D; --ri3-line: #2B3036; --ri3-line2: #3A4048;
  --ri3-text: #ECEEF1; --ri3-text2: #B0B8C1; --ri3-text3: #7E8792;
  --ri3-primary: #4C8DFF; --ri3-primary-press: #3B7BF0; --ri3-primary-weak: #1C2840; --ri3-on-primary: #FFFFFF;
  --ri3-green: #3CCB7F; --ri3-green-weak: #16291F; --ri3-red: #FF6B6B; --ri3-red-weak: #36191B; --ri3-amber: #F2A63B; --ri3-amber-weak: #33260F; --ri3-green-text: #3CCB7F; --ri3-red-text: #FF6B6B; --ri3-amber-text: #F2A63B;
  --ri3-scrim: rgba(0, 0, 0, .6); --ri3-shadow: none; --ri3-seg-bg: #24282D; --ri3-seg-on: #3A3F46;
  --ri3-map-bg: #22262B; --ri3-map-road: #33383F; --ri3-map-river: #1E3347; --ri3-map-park: #1F3324; --ri3-map-block: #2A2F35;
  --ri3-c1: #6EA2FF; --ri3-c2: #F2A63B; --ri3-c3: #A78BFA; --ri3-c4: #3CCB7F; --ri3-c5: #F472B6; --ri3-c6: #38BDF8; --ri3-c7: #7E8792;
}
@media (prefers-color-scheme: dark) {
  body[data-site-theme="system"] .consumer-workspace[data-workspace="life"],
  html[data-site-theme-bootstrap="system"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"] {
    --ri3-bg: #0F1114; --ri3-surface: #1A1D21; --ri3-surface2: #24282D; --ri3-line: #2B3036; --ri3-line2: #3A4048;
    --ri3-text: #ECEEF1; --ri3-text2: #B0B8C1; --ri3-text3: #7E8792;
    --ri3-primary: #4C8DFF; --ri3-primary-press: #3B7BF0; --ri3-primary-weak: #1C2840; --ri3-on-primary: #FFFFFF;
    --ri3-green: #3CCB7F; --ri3-green-weak: #16291F; --ri3-red: #FF6B6B; --ri3-red-weak: #36191B; --ri3-amber: #F2A63B; --ri3-amber-weak: #33260F; --ri3-green-text: #3CCB7F; --ri3-red-text: #FF6B6B; --ri3-amber-text: #F2A63B;
    --ri3-scrim: rgba(0, 0, 0, .6); --ri3-shadow: none; --ri3-seg-bg: #24282D; --ri3-seg-on: #3A3F46;
    --ri3-map-bg: #22262B; --ri3-map-road: #33383F; --ri3-map-river: #1E3347; --ri3-map-park: #1F3324; --ri3-map-block: #2A2F35;
    --ri3-c1: #6EA2FF; --ri3-c2: #F2A63B; --ri3-c3: #A78BFA; --ri3-c4: #3CCB7F; --ri3-c5: #F472B6; --ri3-c6: #38BDF8; --ri3-c7: #7E8792;
  }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-num { font-variant-numeric: tabular-nums; }
/* region box */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-region { display: flex; align-items: center; gap: 10px; box-sizing: border-box; min-height: 60px; padding: 8px 8px 8px 14px; border: 1px solid var(--ri3-line); border-radius: 16px; background: var(--ri3-surface); color: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-region-icon { display: flex; flex: none; color: var(--ri3-primary); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-region-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 17px; line-height: 24px; font-weight: 700; letter-spacing: -.2px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-tag { display: inline-flex; align-items: center; flex: none; height: 22px; padding: 0 7px; border-radius: 6px; font-size: 12px; font-weight: 600; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-tag.is-blue { color: var(--ri3-primary); background: var(--ri3-primary-weak); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-tag.is-gray { color: var(--ri3-text2); background: var(--ri3-surface2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-btn-line { display: inline-flex; align-items: center; justify-content: center; gap: 6px; box-sizing: border-box; height: 44px; min-height: 44px; padding: 0 14px; border: 1px solid var(--ri3-line2); border-radius: 12px; background: var(--ri3-surface); color: var(--ri3-text); font: inherit; font-size: 15px; font-weight: 600; white-space: nowrap; cursor: pointer; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-region .ri3-region-change { margin-left: auto; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.ri3-btn-line, .ri3-more, .ri3-seg-item, .ri3-toggle, .ri3-chip, .ri3-btn-pri, .ri3-btn-sec):focus-visible { outline: 3px solid var(--ri3-primary); outline-offset: 2px; }
/* page title row: PC puts the region box to the right of the title */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-head { display: flex; flex-direction: column; gap: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-head h1, .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-title { margin: 0; color: var(--ri3-text); font-size: 26px; line-height: 34px; font-weight: 800; letter-spacing: -.6px; }
@media (min-width: 761px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-head { flex-direction: row; align-items: flex-end; justify-content: space-between; gap: 24px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-head h1, .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-title { font-size: 32px; line-height: 42px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-head .ri3-region { min-width: 420px; }
}
/* segmented, chips, switch */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-seg { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 4px; padding: 4px; border-radius: 14px; background: var(--ri3-seg-bg); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-seg-item { height: 42px; min-height: 42px; padding: 0 6px; border: 0; border-radius: 10px; background: transparent; color: var(--ri3-text2); font: inherit; font-size: 15px; font-weight: 600; cursor: pointer; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-seg-item.is-on { background: var(--ri3-seg-on); color: var(--ri3-text); font-weight: 700; box-shadow: 0 1px 3px rgba(0, 0, 0, .08); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-filters { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-chip { display: inline-flex; align-items: center; gap: 4px; box-sizing: border-box; height: 40px; min-height: 40px; padding: 0 12px 0 14px; border: 1px solid var(--ri3-line2); border-radius: 20px; background: var(--ri3-surface); color: var(--ri3-text); font: inherit; font-size: 14px; font-weight: 600; white-space: nowrap; cursor: pointer; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-chip.is-on { border-color: var(--ri3-text); background: var(--ri3-text); color: var(--ri3-bg); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-toggle { display: inline-flex; align-items: center; gap: 8px; box-sizing: border-box; height: 40px; min-height: 40px; padding: 0 14px 0 8px; border: 1px solid var(--ri3-line2); border-radius: 20px; background: var(--ri3-surface); color: var(--ri3-text); font: inherit; font-size: 14px; font-weight: 600; white-space: nowrap; cursor: pointer; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-sw { position: relative; flex: none; width: 36px; height: 22px; border-radius: 11px; background: var(--ri3-line2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-sw::after { content: ""; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: #FFFFFF; box-shadow: 0 1px 2px rgba(0, 0, 0, .2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-toggle.is-on { border-color: var(--ri3-primary); color: var(--ri3-primary); background: var(--ri3-primary-weak); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-toggle.is-on .ri3-sw { background: var(--ri3-primary); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-toggle.is-on .ri3-sw::after { left: 17px; }
/* list heading, list card, row */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-lh { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-top: 4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-lh h2 { margin: 0; color: var(--ri3-text); font-size: 18px; line-height: 26px; font-weight: 700; letter-spacing: -.3px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-lh h2 em { font-style: normal; color: var(--ri3-primary); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-lh > span { color: var(--ri3-text3); font-size: 13px; font-weight: 500; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-list { display: flex; flex-direction: column; overflow: hidden; border-radius: 18px; background: var(--ri3-surface); box-shadow: var(--ri3-shadow); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-row { position: relative; display: flex; gap: 14px; padding: 16px 14px 16px 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-row + .ri3-row::before { content: ""; position: absolute; top: 0; left: 16px; right: 16px; height: 1px; background: var(--ri3-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-thumb { display: flex; flex: none; align-items: center; justify-content: center; width: 64px; height: 64px; overflow: hidden; border-radius: 14px; background: var(--ri3-surface2); color: var(--ri3-text2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-thumb img { width: 100%; height: 100%; object-fit: cover; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-body { display: flex; flex: 1; flex-direction: column; justify-content: center; gap: 4px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-name { display: flex; align-items: baseline; gap: 6px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-name b { display: -webkit-box; overflow: hidden; color: var(--ri3-text); font-size: 17px; line-height: 23px; font-weight: 700; letter-spacing: -.3px; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-name small { flex: none; color: var(--ri3-text3); font-size: 13px; font-weight: 500; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-state { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 14px; line-height: 20px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-tone { display: inline-flex; align-items: center; gap: 6px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-dot { display: block; flex: none; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-tone.is-g { color: var(--ri3-green-text, var(--ri3-green)); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-tone.is-r { color: var(--ri3-red-text, var(--ri3-red)); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-tone.is-a { color: var(--ri3-amber-text, var(--ri3-amber)); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-tone.is-m { color: var(--ri3-text3); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-tone.is-p { color: var(--ri3-primary); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-sep { color: var(--ri3-text3); font-weight: 400; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-soft { color: var(--ri3-text2); font-weight: 500; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-meta { color: var(--ri3-text2); font-size: 14px; line-height: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-meta2 { color: var(--ri3-text3); font-size: 13px; line-height: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-note { color: var(--ri3-amber); font-size: 13px; line-height: 18px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-acts { display: flex; flex: none; flex-direction: column; justify-content: center; gap: 8px; }
/* phone = soft blue circle, map = the chosen map app icon, both 44px */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-acts :is(.ri-icon-action, .ri-icon-phone, .ri-icon-map) { display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 44px; height: 44px; min-width: 44px; min-height: 44px; padding: 0; border-radius: 50%; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-acts .ri-icon-phone { border: 0; background: var(--ri3-primary-weak); color: var(--ri3-primary); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-acts .ri-icon-phone svg { width: 20px; height: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-acts .ri-icon-map { border: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-acts .ri-icon-map img { width: 36px; height: 36px; border-radius: 10px; }
/* 시안 03 mapApp(): the 네이버지도 button is a green rounded square with a white pin and an 「N」 (board.html).
   Only the picture is swapped, on the 지역정보 screens: the <img> keeps its src (the shared place-actions PNG other
   screens use), its alt/aria-label, link and the reader's map choice. The other map apps keep their own icons. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri-icon-map[data-map-icon="naver-map"] .ri-icon-map-image {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 26'%3E%3Crect x='1' y='1' width='24' height='24' rx='7' fill='%2303C75A'/%3E%3Cpath d='M13 21s-5.5-4.7-5.5-9a5.5 5.5 0 0 1 11 0c0 4.3-5.5 9-5.5 9z' fill='%23fff'/%3E%3Cpath d='M11 13.6V9.4h1l2.2 3V9.4h1v4.2h-1L12 10.7v2.9z' fill='%2303C75A'/%3E%3C/svg%3E");
  object-fit: contain;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-more { display: flex; align-items: center; justify-content: center; gap: 4px; box-sizing: border-box; width: 100%; height: 52px; min-height: 52px; border: 0; border-radius: 14px; background: var(--ri3-surface); color: var(--ri3-text); font: inherit; font-size: 15px; font-weight: 600; box-shadow: var(--ri3-shadow); cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-source { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 4px; color: var(--ri3-text3); font-size: 13px; line-height: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-source :is(a, button) { display: inline-flex; align-items: center; gap: 2px; min-height: 44px; padding: 0; border: 0; background: transparent; color: var(--ri3-text2); font: inherit; font-weight: 600; text-decoration: none; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-card { padding: 18px; border-radius: 18px; background: var(--ri3-surface); box-shadow: var(--ri3-shadow); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-card h3 { margin: 0; color: var(--ri3-text); font-size: 17px; font-weight: 700; letter-spacing: -.3px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-btn-pri { display: flex; align-items: center; justify-content: center; gap: 6px; box-sizing: border-box; height: 54px; min-height: 44px; padding: 0 16px; border: 0; border-radius: 14px; background: var(--ri3-primary); color: var(--ri3-on-primary); font: inherit; font-size: 16px; font-weight: 700; cursor: pointer; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-btn-sec { display: flex; align-items: center; justify-content: center; gap: 6px; box-sizing: border-box; height: 54px; min-height: 44px; padding: 0 16px; border: 1px solid var(--ri3-line2); border-radius: 14px; background: var(--ri3-surface); color: var(--ri3-text); font: inherit; font-size: 16px; font-weight: 600; cursor: pointer; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-batt { display: inline-flex; align-items: center; gap: 5px; color: var(--ri3-text2); font-size: 13px; font-weight: 600; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-batt b { font-weight: 700; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-batt.is-charging { color: var(--ri3-green); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-batt.is-low { color: var(--ri3-red); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-batt-bolt { fill: var(--ri3-surface); stroke: var(--ri3-surface); stroke-width: .6; }
/* PC: lists in two columns */
@media (min-width: 761px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-pcgrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: start; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-pcgrid > .ri3-list { height: 100%; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-pcbar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .ri3-pcbar > .ri3-seg { width: 420px; }
}

/* ── 시안 03: 병원·응급실·약국 + 지역 변경 창 START ── */
/* site-life-medical-list.js builds .medical-surface.medical-ri3 out of the ri3 pieces. The older .medical-*
   rules above (시안 01·02, ":not(#ri)" or ".medical-screen") are lifted over here, where they still reach. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-surface.medical-ri3 { display: flex; flex-direction: column; align-items: stretch; gap: 16px; grid-template-columns: none; color: var(--ri3-text); word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 > * { margin: 0; min-width: 0; width: auto; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 [hidden] { display: none !important; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-title:focus { outline: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-where-note { margin-top: -6px; color: var(--ri3-text2); font-size: 13px; line-height: 19px; }
/* tabs, then 진료과 / 진료 중만 under them on a phone; one row on a PC */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-bar { display: flex; flex-direction: column; gap: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .ri3-seg-item { height: 44px; min-height: 44px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 :is(.ri3-chip, .ri3-toggle) { height: 44px; min-height: 44px; border-radius: 22px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .ri3-chip svg { flex: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-switch { position: relative; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-switch-input {
  position: absolute; inset: 0; width: 100%; height: 100%; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: inherit; opacity: 0; cursor: pointer; -webkit-appearance: none; appearance: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-switch:focus-within { outline: 3px solid var(--ri3-primary); outline-offset: 2px; }
/* 가까운 병원 15곳 · 진료 중 먼저 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-count { margin: 0; color: var(--ri3-text); font-size: 18px; line-height: 26px; font-weight: 700; letter-spacing: -.3px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-count-number { font-style: normal; color: var(--ri3-primary); }
/* the list: one white card of rows; two columns of rows on a PC (one <ol>, so the reading order stays row by row) */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-results {
  display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; margin: 0; padding: 0; list-style: none; overflow: hidden; border-radius: 18px; background: var(--ri3-surface); box-shadow: var(--ri3-shadow);
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place {
  position: relative; display: flex; flex-direction: row; align-items: stretch; gap: 14px; min-width: 0; margin: 0; padding: 16px 14px 16px 16px; border: 0; border-radius: 0; background: var(--ri3-surface); box-shadow: none; list-style: none;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place::marker { content: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place + .medical-place::before { content: ""; position: absolute; top: 0; left: 16px; right: 16px; height: 1px; background: var(--ri3-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-tile { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; color: var(--ri3-red); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-tile[data-medical-tile="pharmacy"] { color: var(--ri3-green); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-tile svg { width: 28px; height: 28px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-media { position: relative; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place-photo { display: block; width: 100%; height: 100%; object-fit: cover; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place-name { margin: 0; padding: 0; font: inherit; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-info { margin: 0; overflow-wrap: anywhere; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-photo-attribution { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-photo-attribution a { min-height: 0; color: inherit; text-decoration: underline; }
/* 응급실: the top row (icons side by side), then 「가용 병상 14 · 10:48 보고 · 7분 전」 on grey, the notice in amber */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place.is-er { flex-direction: column; gap: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-top { display: flex; gap: 14px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .is-er .ri3-acts { flex-direction: row; align-items: center; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-beds {
  display: flex; align-items: center; gap: 10px; min-width: 0; margin-top: 6px; padding: 10px 12px; border: 0; border-radius: 12px; background: var(--ri3-surface2);
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-beds-head { display: flex; align-items: center; gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-beds-label { color: var(--ri3-text2); font-size: 13px; line-height: 18px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-beds-value { color: var(--ri3-green); font-size: 22px; line-height: 28px; font-weight: 800; letter-spacing: -.4px; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-beds[data-medical-beds="FULL"] .medical-card-beds-value { color: var(--ri3-red); font-size: 17px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-beds-time { margin-left: auto; color: var(--ri3-text3); font-size: 13px; line-height: 18px; text-align: right; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-notice { margin: 8px 0 0; padding: 0; border: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-notice strong { font-weight: inherit; }
/* N곳 더 보기, the source line and what [자세히] opens */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-more { justify-self: stretch; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-foot { display: flex; flex-direction: column; gap: 8px; margin-top: -4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-foot-detail { display: grid; gap: 4px; padding: 0 4px; color: var(--ri3-text2); font-size: 13px; line-height: 19px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-foot-detail p { margin: 0; }
/* a problem: one line and the next tap */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-problem {
  display: grid; justify-items: center; gap: 14px; padding: 28px 20px; border: 0; border-radius: 18px; background: var(--ri3-surface); box-shadow: var(--ri3-shadow); text-align: center;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-problem-text { margin: 0; color: var(--ri3-text); font-size: 16px; line-height: 24px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-problem-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-problem-button { height: 48px; padding: 0 18px; font-size: 15px; }
@media (min-width: 761px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-surface.medical-ri3 { gap: 20px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-bar { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 12px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-bar > .ri3-seg { flex: none; width: 420px; max-width: 100%; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-results { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 16px; overflow: visible; border-radius: 0; background: transparent; box-shadow: none; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place:nth-child(2)::before { content: none; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place:nth-child(-n+2) { border-top-left-radius: 18px; border-top-right-radius: 18px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place:nth-last-child(-n+2) { border-bottom-left-radius: 18px; border-bottom-right-radius: 18px; }
}
/* ── 시안 03: 병원·응급실·약국 + 지역 변경 창 END ── */
/* ── 시안 03: 전기차 충전소 START ── */
/* ── 시안 03: 전기차 충전소 END ── */
/* ── 시안 03: 축제·행사 + 축제 상세 START ── */
/* page: 16px between blocks, as the 시안 page */
/* the screen titles itself (「축제·행사」 h1; none on the 축제 상세): the frame's title is for screen readers */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) > .site-modal.site-festival-modal > .site-modal-header h2 { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-manager { gap: 0; color: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.festival-list-surface, .festival-detail-surface) { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-manager [hidden] { display: none !important; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-location-banner { position: relative; display: block; min-width: 0; margin: 0; padding: 0; border: 0; background: transparent; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-location-banner .ri3-region-change { min-height: 44px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-filter-bar { position: relative; display: block; margin: 0; padding: 0; border: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-chip-row { display: flex; flex-wrap: wrap; gap: 8px; }
/* 팝업 (LIFEINFO-DEV-25): chips, then 시작일 · 종료일 · [조회] on one row */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .consumer-life-popup > .festival-page { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .consumer-life-popup > .festival-page > * { margin-block: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .popup-filter-bar { display: grid; gap: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .popup-date-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; gap: 6px; align-items: end; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .popup-date-row > .ri3-btn-line { padding: 0 12px; }
/* 팝업 카드 (LIFEINFO-DEV-27, 운영 10-24: 카드 안이 가로로 놓여 이름·기간·장소가 좁은 세로 칸으로 쪼개짐): 56px 그림 + 오른쪽 한 줄씩 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .consumer-life-popup .festival-card { flex-direction: row; align-items: flex-start; gap: 14px; padding: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .consumer-life-popup .festival-card-media { flex: 0 0 56px; width: 56px; height: 56px; aspect-ratio: auto; border-radius: 14px; overflow: hidden; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .consumer-life-popup .festival-card-media > * { width: 56px; height: 56px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .consumer-life-popup .festival-card-body { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .consumer-life-popup .festival-card-body summary.festival-card-title { font-size: 17px; font-weight: 800; line-height: 1.35; list-style: none; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .consumer-life-popup .festival-card-body button.festival-card-title { all: unset; font-size: 14px; line-height: 1.45; color: var(--ri3-text2); cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .consumer-life-popup .festival-card-body button.festival-card-title:focus-visible { outline: 3px solid var(--ri3-primary); outline-offset: 2px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .consumer-life-popup .festival-card-body .festival-card-period { margin: 0; font-size: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .consumer-life-popup .festival-card-body .consumer-feature-note { margin: 0; font-size: 13px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .popup-date-row > label.consumer-life-field { display: grid; gap: 4px; min-width: 0; color: var(--ri3-text2); font-size: 13px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .popup-date-row input.consumer-life-field { box-sizing: border-box; width: 100%; min-width: 0; height: 44px; min-height: 44px; padding: 0 8px; border: 1px solid var(--ri3-line2); border-radius: 12px; background: var(--ri3-surface); color: var(--ri3-text); font: inherit; font-size: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .popup-date-row input.consumer-life-field::-webkit-calendar-picker-indicator { width: 16px; height: 16px; margin: 0 0 0 2px; padding: 0; }
/* 7번 실사용 점검 10-29 (운영 375폭): two dates and 조회 in one row left each date 133px for 145px of text -- the calendar mark was cut. */
@media (max-width: 420px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .popup-date-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .popup-date-row > .ri3-btn-line { grid-column: 1 / -1; min-height: 44px; }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-chip.ri3-chip { min-height: 40px; height: 40px; padding: 0 16px; border: 1px solid var(--ri3-line2); border-radius: 20px; background: var(--ri3-surface); color: var(--ri3-text); font-size: 14px; font-weight: 600; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-chip.ri3-chip::before { display: none; content: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-chip.ri3-chip[aria-pressed="true"] { border-color: var(--ri3-text); background: var(--ri3-text); color: var(--ri3-bg); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-chip.festival-date-chip { gap: 4px; padding: 0 12px 0 14px; }
/* one period field 「진행 중 ⌄」 and its pick sheet (owner 10-26: no row of chips) */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-chip.festival-period-select { gap: 6px; padding: 0 12px 0 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-chip.festival-period-select svg { color: var(--ri3-text2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-period-sheet { display: flex; flex-direction: column; gap: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-period-options .festival-chip.ri3-chip { min-height: 48px; height: 48px; padding: 0 18px; font-size: 15px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-list-head { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.festival-status, .festival-empty, .festival-error) { margin: 0; color: var(--ri3-text2); font-size: 15px; }
/* cards: one column on a phone, three a row on a PC */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; align-items: start; margin: 0; }
@media (min-width: 761px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card { display: flex; flex-direction: column; gap: 0; min-width: 0; margin: 0; padding: 0; overflow: hidden; border: 0; border-radius: 18px; background: var(--ri3-surface); box-shadow: var(--ri3-shadow); opacity: 1; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card[data-festival-ended] .festival-hero { opacity: .72; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-media { display: block; width: 100%; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; cursor: pointer; box-shadow: none; }
/* the photo: 16:9, a portrait poster shown whole over its own blur, no photo = grey + glyph */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-hero { position: relative; display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; overflow: hidden; margin: 0; border: 0; border-radius: 0; background: var(--ri3-surface2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-hero img { position: absolute; inset: 0; width: 100%; height: 100%; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-hero .festival-hero-image { object-fit: cover; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-hero .festival-hero-backdrop { display: none; object-fit: cover; filter: blur(18px) brightness(.85); transform: scale(1.15); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-hero.is-poster .festival-hero-backdrop { display: block; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-hero.is-poster .festival-hero-image { object-fit: contain; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.festival-hero:has(.festival-hero-placeholder), .festival-hero.festival-hero-placeholder) { display: flex; flex-direction: row; align-items: center; justify-content: center; background: var(--ri3-surface2); color: var(--ri3-text3); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-hero.festival-hero-placeholder::before,
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-hero.festival-hero-placeholder::after { display: none; content: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-hero-tag { position: absolute; top: 12px; left: 12px; z-index: 1; display: inline-flex; align-items: center; height: 26px; padding: 0 7px; border-radius: 6px; background: rgba(0, 0, 0, .6); color: #FFFFFF; font-size: 13px; font-weight: 600; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-body { display: flex; flex-direction: row; flex-wrap: nowrap; align-items: flex-start; gap: 12px; padding: 14px 16px 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-text { display: flex; flex: 1; flex-direction: column; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-name { margin: 0 0 4px; color: var(--ri3-text); font-size: 18px; line-height: 24px; font-weight: 700; letter-spacing: -.3px; overflow-wrap: anywhere; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-title { display: inline-flex; align-items: center; margin: 0; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; letter-spacing: inherit; text-align: left; cursor: pointer; box-shadow: none; min-height: 44px; } /* FAINT-TEXT-CONTRAST-01: a 44px tap row (애플 측정 24px), the words unchanged */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-title:focus-visible { outline: 3px solid var(--ri3-primary); outline-offset: 2px; border-radius: 4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-period { margin: 0; color: var(--ri3-text2); font-size: 14px; line-height: 20px; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-location { margin: 0; color: var(--ri3-text3); font-size: 13px; line-height: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-distance { margin: 0; color: inherit; font: inherit; }
/* right of the name: [📅+] and the map app, 44px each */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-action-row { display: flex; flex: none; flex-wrap: nowrap; align-items: center; gap: 8px; margin: 0; padding: 0; border: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-action-row .festival-calendar-add { display: contents; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-action-row .festival-calendar-add-trigger { display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 44px; height: 44px; min-width: 44px; min-height: 44px; padding: 0; border: 1px solid var(--ri3-line); border-radius: 50%; background: var(--ri3-surface); color: var(--ri3-text); box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-action-row .festival-card-map { display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 44px; height: 44px; min-width: 44px; min-height: 44px; padding: 0; border: 0; border-radius: 50%; background: transparent; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-card-action-row .festival-card-map img { width: 36px; height: 36px; border-radius: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.festival-calendar-add-trigger, .festival-card-map, .festival-link, .festival-program-register, .festival-back-button, .festival-month-nav-button):focus-visible { outline: 3px solid var(--ri3-primary); outline-offset: 2px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-calendar-add-feedback { margin: 0 16px 12px; color: var(--ri3-text2); font-size: 13px; line-height: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-calendar-add-feedback[role="alert"] { color: var(--ri3-red); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-calendar-add-desktop-anchor:not(:empty) { margin: 0 16px 16px; }
/* the admin's links: [⌂ 홈페이지] [≡ 프로그램] [🎟 체험·신청] */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-link-row { display: flex; flex-wrap: wrap; gap: 8px; padding: 0 16px 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-link { display: inline-flex; align-items: center; justify-content: center; gap: 6px; box-sizing: border-box; height: 40px; min-height: 40px; padding: 0 12px; border: 0; border-radius: 10px; background: var(--ri3-surface2); color: var(--ri3-text); font-size: 14px; font-weight: 600; text-decoration: none; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-load-more { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-load-more:disabled { opacity: .6; cursor: progress; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-retry-button { align-self: flex-start; }
/* [변경] / [날짜] pickers on a PC open under their button */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.festival-region-desktop-anchor, .festival-date-desktop-anchor):not(:empty) { position: absolute; top: calc(100% + 8px); right: 0; z-index: 30; width: min(420px, 100%); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-date-desktop-anchor:not(:empty) { left: 0; right: auto; width: 380px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-region-sheet,
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-date-sheet { display: flex; flex-direction: column; gap: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.festival-region-sheet-title, .festival-date-sheet-title) { margin: 0; color: var(--ri3-text); font-size: 20px; line-height: 28px; font-weight: 800; letter-spacing: -.4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-region-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-region-option { min-height: 48px; padding: 0 6px; border: 1px solid var(--ri3-line); border-radius: 12px; background: var(--ri3-surface); color: var(--ri3-text); font-size: 15px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-region-option.is-selected { border-color: var(--ri3-primary); background: var(--ri3-primary-weak); color: var(--ri3-primary); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-region-current-button { height: 50px; text-decoration: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-month-nav { display: flex; align-items: center; justify-content: space-between; gap: 8px; border: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-month-nav-button { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-width: 44px; min-height: 44px; padding: 0; border: 1px solid var(--ri3-line); border-radius: 50%; background: var(--ri3-surface); color: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-month-nav-button:disabled { opacity: .35; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-month-nav-label { min-height: 44px; display: flex; align-items: center; padding: 0; border: 0; background: transparent; color: var(--ri3-text); font-size: 16px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-date-sheet-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-date-sheet-actions .ri3-btn-sec { height: 48px; font-size: 15px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-date-sheet-actions .ri3-btn-sec[aria-pressed="true"] { border-color: var(--ri3-text); background: var(--ri3-text); color: var(--ri3-bg); }
/* 축제 상세 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-back-button { display: inline-flex; align-items: center; gap: 2px; align-self: flex-start; height: 40px; min-height: 40px; margin: 0 0 0 -6px; padding: 0 6px 0 0; border: 0; border-radius: 10px; background: transparent; color: var(--ri3-text2); font-size: 15px; font-weight: 600; box-shadow: none; }
html[data-subview-back-shell] .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-back-button[data-subview-back] { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-layout { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
@media (min-width: 761px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-layout.has-programs { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: start; }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-main { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-hero.festival-hero-detail { border-radius: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-header { display: flex; flex-direction: column; gap: 6px; margin: 0; padding: 0; border: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-name { margin: 0; color: var(--ri3-text); font-size: 24px; line-height: 32px; font-weight: 800; letter-spacing: -.6px; overflow-wrap: anywhere; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-period { margin: 0; color: var(--ri3-text2); font-size: 15px; line-height: 20px; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-location { margin: 0; color: var(--ri3-text3); font-size: 14px; line-height: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-links .festival-link { height: 48px; min-height: 48px; border: 1px solid var(--ri3-line2); background: var(--ri3-surface); font-size: 15px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-acts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-acts > :only-child { grid-column: 1 / -1; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-acts .festival-calendar-add { display: contents; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-acts :is(.festival-detail-calendar, .festival-detail-map) { width: 100%; height: 50px; min-height: 50px; border: 1px solid var(--ri3-line2); border-radius: 14px; background: var(--ri3-surface); color: var(--ri3-text); font-size: 16px; font-weight: 600; text-decoration: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-map img { width: 22px; height: 22px; border-radius: 6px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-main > .festival-calendar-add-feedback { margin: -8px 0 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-detail-main > .festival-calendar-add-desktop-anchor:not(:empty) { margin: 0; }
/* 「프로그램 N개」 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-program-card { padding: 6px 0; border-radius: 18px; background: var(--ri3-surface); box-shadow: var(--ri3-shadow); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-program-card-head { display: flex; align-items: baseline; justify-content: space-between; padding: 14px 18px 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-program-card-head h3 { margin: 0; color: var(--ri3-text); font-size: 17px; line-height: 24px; font-weight: 700; letter-spacing: -.3px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-program-card-head span { color: var(--ri3-text3); font-size: 13px; line-height: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-program-rows { margin: 0; padding: 0; list-style: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-program-row { display: flex; align-items: center; gap: 12px; padding: 14px 18px; border-top: 1px solid var(--ri3-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-program-row-main { display: flex; flex: 1; flex-direction: column; gap: 3px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-program-row-top { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-program-row-name { color: var(--ri3-text); font-size: 16px; line-height: 22px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-program-state { gap: 5px; font-size: 13px; line-height: 18px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-program-state .ri3-tone { gap: 5px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-program-register { flex: none; display: inline-flex; align-items: center; justify-content: center; height: 40px; min-height: 40px; padding: 0 14px; border-radius: 10px; font-size: 14px; text-decoration: none; }
/* old festival rules this screen no longer uses */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .festival-manager .festival-status-badge { display: none; }
/* ── 시안 03: 축제·행사 + 축제 상세 END ── */
/* ── 시안 03: 지역뉴스 START ── */
/* 지역뉴스 rules live in site-life-news.css; here only the PC column: 시안 03 .pcwrap is 1072 wide with
   48px sides (976 of content) — wider than the 760 column of the 시안 01·02 screens. */
@media (min-width: 761px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) > .site-modal[data-life-view="life-news"] { max-width: 976px; }
}
/* ── 시안 03: 지역뉴스 END ── */
/* ── 시안 03: 지하철 START ── */
/* board SCR.subway: .line-pill .lbadge .seg .arr .track .card .bars .bar .source. Root .subway-station. */
.consumer-workspace[data-workspace="life"] { --ri3-subway-bar: #A8C5FF; }
body[data-site-theme="dark"] .consumer-workspace[data-workspace="life"],
html[data-site-theme-bootstrap="dark"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"] { --ri3-subway-bar: #33507F; }
@media (prefers-color-scheme: dark) {
  body[data-site-theme="system"] .consumer-workspace[data-workspace="life"],
  html[data-site-theme-bootstrap="system"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"] { --ri3-subway-bar: #33507F; }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station { display: flex; flex-direction: column; gap: 16px; color: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station :is(p, h3, h4) { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-station-top { display: flex; flex-direction: column; gap: 16px; }
/* head: 44px tile (line colour, white train) + 「강남역」 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-station-head { display: flex; align-items: center; gap: 12px; min-height: 44px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-station-tile { position: relative; flex: 0 0 44px; width: 44px; height: 44px; border-radius: 13px; background: var(--subway-line-color, #00A84D); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station :is(.subway-station-tile, .subway-track-train)::after {
  content: ""; position: absolute; inset: 0; margin: auto; width: 26px; height: 26px; background: var(--subway-line-ink, #FFFFFF);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='3' width='14' height='14' rx='3.5'/%3E%3Cpath d='M5 10h14M8.5 21l2-4M15.5 21l-2-4'/%3E%3Ccircle cx='9' cy='13.5' r='.7' fill='black'/%3E%3Ccircle cx='15' cy='13.5' r='.7' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='3' width='14' height='14' rx='3.5'/%3E%3Cpath d='M5 10h14M8.5 21l2-4M15.5 21l-2-4'/%3E%3Ccircle cx='9' cy='13.5' r='.7' fill='black'/%3E%3Ccircle cx='15' cy='13.5' r='.7' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-station-name { min-width: 0; color: var(--ri3-text); font-size: 26px; line-height: 34px; font-weight: 800; letter-spacing: -.6px; }
/* line pills */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-line-row { display: flex; flex-wrap: wrap; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-line-chip {
  display: inline-flex; align-items: center; gap: 8px; box-sizing: border-box; height: 44px; min-height: 44px; padding: 0 14px 0 6px;
  border: 1.5px solid var(--ri3-line); border-radius: 22px; background: var(--ri3-surface); color: var(--ri3-text);
  font: inherit; font-size: 15px; font-weight: 700; white-space: nowrap; box-shadow: none; cursor: pointer;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-line-chip[aria-pressed="true"] { border: 1.5px solid var(--subway-line-color, var(--ri3-primary)); background: var(--ri3-surface); color: var(--ri3-text); font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-line-chip-name { font-size: 15px; line-height: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-line-chip .subway-line-mark { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; width: auto; min-width: 28px; height: 28px; padding: 0 7px; border-radius: 14px; font-size: 13px; line-height: 1; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-line-chip .subway-line-mark.is-word { font-size: 12px; border-radius: 14px; }
/* body: one column (phone), 방향·도착·다음 | 혼잡도 (PC) */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-station-body { display: flex; flex-direction: column; gap: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station :is(.subway-station-main, .subway-realtime, .subway-next-holder) { display: flex; flex-direction: column; gap: 16px; min-width: 0; margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-next-holder:empty { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-status { margin: 0; color: var(--ri3-text2); font-size: 15px; line-height: 22px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-status:empty { display: none; }
/* 방향: the 시안 segmented control, two lines per item */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-dir-seg { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 4px; max-width: none; padding: 4px; border-radius: 14px; background: var(--ri3-seg-bg); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-dir {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0; box-sizing: border-box; min-width: 0; height: 54px; min-height: 54px; padding: 0 6px;
  border: 0; border-radius: 10px; background: transparent; color: var(--ri3-text2); font: inherit; line-height: 1.25; text-align: center; box-shadow: none; cursor: pointer;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-dir-heading { font-size: 15px; line-height: 19px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-dir-sub { color: var(--ri3-text3); font-size: 12px; line-height: 15px; font-weight: 500; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-dir[aria-pressed="true"] { background: var(--ri3-seg-on); color: var(--ri3-text); box-shadow: 0 1px 3px rgba(0, 0, 0, .08); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-dir[aria-pressed="true"] .subway-dir-heading { font-weight: 700; }
/* the nearest train: white card */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-next-card { display: block; padding: 18px; border: 0; border-radius: 18px; background: var(--ri3-surface); box-shadow: var(--ri3-shadow); color: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-next-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-next-label { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; color: var(--ri-green); font-size: 14px; line-height: 20px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-next-dot { width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-next-card .subway-checked { flex: none; color: var(--d-muted, var(--ri3-text3)); font-size: 13px; line-height: 18px; font-weight: 400; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-next-when { margin-top: 8px; color: var(--ri3-text); font-size: 34px; line-height: 1.2; font-weight: 800; letter-spacing: -1px; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-next-where { margin-top: 2px; color: var(--ri3-text2); font-size: 15px; line-height: 1.4; font-weight: 400; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-tag { min-height: 22px; padding: 0 7px; border-radius: 6px; background: var(--ri3-surface2); color: var(--ri3-text2); font-size: 12px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-tag-last { background: var(--ri3-red-weak); color: var(--ri3-red); }
/* track: train ●──○ here, in the line's colour */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-track { display: block; margin: 18px 0 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-track-line { position: relative; display: flex; align-items: center; justify-content: space-between; height: 28px; min-height: 28px; margin: 0 6px 6px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-track-line::before { content: ""; position: absolute; left: 12px; right: 12px; top: 12px; height: 4px; margin: 0; border-radius: 2px; background: var(--subway-track-color, #00A84D); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-track-train { position: relative; flex: none; width: 28px; height: 28px; border-radius: 50%; background: var(--subway-track-color, #00A84D); --subway-line-ink: #FFFFFF; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-track-train::after { width: 16px; height: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-track-stop { position: relative; flex: none; width: 10px; height: 10px; border-radius: 50%; background: var(--subway-track-color, #00A84D); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-track-here { position: relative; flex: none; box-sizing: border-box; width: 24px; height: 24px; border: 4px solid var(--subway-track-color, #00A84D); border-radius: 50%; background: var(--ri3-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-track-labels { display: flex; justify-content: space-between; gap: 12px; color: var(--ri3-text2); font-size: 13px; line-height: 18px; font-weight: 600; }
/* 다음 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-next-row { display: flex; flex-wrap: nowrap; align-items: center; gap: 14px; box-sizing: border-box; min-height: 0; margin: 0; padding: 16px 18px; border: 0; border-radius: 18px; background: var(--ri3-surface); box-shadow: var(--ri3-shadow); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-next-row-label { width: auto; flex: none; color: var(--ri3-text3); font-size: 13px; line-height: 18px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-next-row-where { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; flex: 1 1 auto; min-width: 0; color: var(--ri3-text); font-size: 15px; line-height: 21px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-next-row-when { flex: none; margin-left: auto; color: var(--ri3-primary); font-size: 16px; line-height: 22px; font-weight: 800; white-space: nowrap; font-variant-numeric: tabular-nums; }
/* 이 시간대 혼잡도 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average { display: block; margin: 0; padding: 18px; border: 0; border-radius: 18px; background: var(--ri3-surface); box-shadow: var(--ri3-shadow); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average-head { display: flex; flex-wrap: nowrap; align-items: baseline; justify-content: space-between; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average-title { color: var(--ri3-text); font-size: 17px; line-height: 24px; font-weight: 700; letter-spacing: -.3px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average-basis { color: var(--ri3-text3); font-size: 13px; line-height: 18px; font-weight: 400; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average > .subway-status { margin-top: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average-rows { display: flex; flex-direction: column; gap: 10px; margin: 14px 0 0; padding: 0; list-style: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average-row { display: grid; grid-template-columns: 72px minmax(0, 1fr) 44px; align-items: center; gap: 10px; min-height: 0; padding: 0; border: 0; color: var(--ri3-text2); font-size: 14px; line-height: 20px; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station :is(.subway-average-label, .subway-average-value) { color: inherit; font-size: 14px; line-height: 20px; font-weight: 400; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average-value { text-align: right; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average-bar { display: block; height: 8px; overflow: hidden; border-radius: 4px; background: var(--ri3-surface2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average-fill { display: block; height: 100%; border-radius: 4px; background: var(--ri3-subway-bar); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average-row[data-now="true"] { color: var(--ri3-primary); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average-row[data-now="true"] :is(.subway-average-label, .subway-average-value) { color: var(--ri3-primary); font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-average-row[data-now="true"] .subway-average-fill { background: var(--ri3-primary); }
/* foot: source line (opens the sources) · ↻ 새로고침 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-foot { padding: 0 4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-foot .subway-more { min-height: 44px; padding: 0; border: 0; background: transparent; color: var(--d-muted, var(--ri3-text3)); font: inherit; font-size: 13px; line-height: 18px; font-weight: 400; text-align: left; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-foot .subway-refresh { display: inline-flex; align-items: center; gap: 4px; height: 44px; min-height: 44px; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--ri3-text2); font: inherit; font-size: 13px; font-weight: 600; white-space: nowrap; box-shadow: none; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-foot .subway-refresh[hidden] { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-foot .subway-refresh::before {
  content: ""; flex: none; width: 15px; height: 15px; margin-right: 2px; background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12a8 8 0 1 1-2.3-5.6M20 4.5v4.6h-4.6'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12a8 8 0 1 1-2.3-5.6M20 4.5v4.6h-4.6'/%3E%3C/svg%3E") center / contain no-repeat;
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-source-detail { display: flex; flex-direction: column; gap: 6px; padding: 14px 16px; border: 0; border-radius: 14px; background: var(--ri3-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-source-detail[hidden] { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-source-detail .subway-source { color: var(--ri3-text2); font-size: 13px; line-height: 20px; }
@media (min-width: 761px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station { gap: 20px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-station-name { font-size: 32px; line-height: 42px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-station-body { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: start; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .subway-station .subway-station-body > :is(.subway-station-main, .subway-average) { grid-column: auto; width: auto; }
}
/* ── 시안 03: 지하철 END ── */
/* ── 시안 03: 온누리상품권·지역화폐 START ── */
/* 「12_온누리상품권·지역화폐」 (site-life-onnuri.js, site-life-vouchers.js). Underline tabs, two 48px region boxes
   + 분야 chips (PC: 420px boxes and the chips on one line), 「가맹점 N곳 … 가나다 순」, rows in one list card on a phone and
   two columns on PC (DOM order kept; the columns are a CSS grid whose rows draw the cards), 「N곳 더 보기」, the source line.
   Inactive tab words: #646E7A on light (text3 #8B95A1 is below 4.5:1 there), text3 on dark. */
.consumer-workspace[data-workspace="life"] { --onnuri-tab-off: #646E7A; --onnuri-list-shadow: drop-shadow(0 1px 2px rgba(17, 20, 24, .04)) drop-shadow(0 2px 8px rgba(17, 20, 24, .04)); }
body[data-site-theme="dark"] .consumer-workspace[data-workspace="life"], html[data-site-theme-bootstrap="dark"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"] { --onnuri-tab-off: #7E8792; --onnuri-list-shadow: none; }
@media (prefers-color-scheme: dark) { body[data-site-theme="system"] .consumer-workspace[data-workspace="life"], html[data-site-theme-bootstrap="system"] body:not([data-site-theme]) .consumer-workspace[data-workspace="life"] { --onnuri-tab-off: #7E8792; --onnuri-list-shadow: none; } }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .voucher-hub { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .voucher-hub > * { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .voucher-hub .voucher-tabpanel[hidden] { display: none !important; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .voucher-hub .voucher-tabpanel:focus-visible { outline: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .voucher-hub .voucher-tabbar { display: flex; gap: 0; margin: 0; padding: 0; border: 0; border-bottom: 1px solid var(--ri3-line); border-radius: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .voucher-hub .voucher-tabbtn { position: relative; display: flex; flex: 1 1 0; align-items: center; justify-content: center; box-sizing: border-box; height: 48px; min-height: 48px; margin: 0; padding: 0 8px; border: 0; border-radius: 0; background: transparent; color: var(--onnuri-tab-off); font: inherit; font-size: 16px; line-height: 22px; font-weight: 600; letter-spacing: 0; box-shadow: none; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .voucher-hub .voucher-tabbtn[aria-selected="true"] { background: transparent; color: var(--ri3-text); font-weight: 700; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .voucher-hub .voucher-tabbtn[aria-selected="true"]::after { content: ""; position: absolute; left: 16px; right: 16px; bottom: -1px; height: 2px; border-radius: 2px; background: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .voucher-hub .voucher-tabbtn:focus-visible { outline: 3px solid var(--ri3-primary); outline-offset: -3px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) { display: flex; flex-direction: column; gap: 16px; min-width: 0; word-break: keep-all; overflow-wrap: anywhere; color: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) > * { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) [hidden], .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .onnuri-surface [data-onnuri-design-hidden], .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .voucher-surface [data-voucher-design-hidden] { display: none !important; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-sr-only, .voucher-sr-only) { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-controls, .voucher-controls) { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-regions) { min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-region-row, .voucher-region-row) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-region-box, .voucher-region-box) { position: relative; display: block; min-width: 0; margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-region-select, .voucher-region-select) { -webkit-appearance: none; appearance: none; display: block; box-sizing: border-box; width: 100%; height: 48px; min-height: 48px; margin: 0; padding: 0 34px 0 14px; border: 1px solid var(--ri3-line2); border-radius: 12px; background: var(--ri3-surface); color: var(--ri3-text); font: inherit; font-size: 14px; line-height: 20px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; box-shadow: none; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-region-select, .voucher-region-select) option { background: var(--ri3-surface); color: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-region-select, .voucher-region-select):focus-visible { outline: 3px solid var(--ri3-primary); outline-offset: 2px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-region-chev, .voucher-region-chev) { position: absolute; top: 50%; right: 12px; transform: translateY(-50%); color: var(--ri3-text); pointer-events: none; }
@media (max-width: 760px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-region-box, .voucher-region-box).is-wide { grid-column: 1 / -1; }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-chips, .voucher-chips, .voucher-category-chips, .voucher-scheme-list) { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-chip, .voucher-chip) { position: relative; padding: 0 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-chip, .voucher-chip, .voucher-scheme-chip, .voucher-pill, .voucher-nearby, .onnuri-near)::before { content: ""; position: absolute; left: 0; right: 0; top: -2px; bottom: -2px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .onnuri-surface .onnuri-chip { isolation: isolate; height: 44px; min-height: 44px; border: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .onnuri-surface .onnuri-chip::before { z-index: -1; top: 2px; bottom: 2px; border: 1px solid var(--ri3-line2); border-radius: 20px; background: var(--ri3-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .onnuri-surface .onnuri-chip.is-on { background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .onnuri-surface .onnuri-chip.is-on::before { border-color: var(--ri3-text); background: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.voucher-scheme-chip, .voucher-chip, .voucher-pill, .voucher-nearby, .onnuri-near) { isolation: isolate; height: 44px; min-height: 44px; border: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.voucher-scheme-chip, .voucher-chip, .voucher-pill, .voucher-nearby, .onnuri-near)::before { z-index: -1; top: 2px; bottom: 2px; border: 1px solid var(--ri3-line2); border-radius: 20px; background: var(--ri3-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.voucher-scheme-chip, .voucher-chip).is-on { background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.voucher-scheme-chip, .voucher-chip).is-on::before,
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.voucher-nearby, .onnuri-near)[aria-pressed="true"]::before { border-color: var(--ri3-text); background: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.voucher-scheme-chip, .voucher-pill, .voucher-nearby, .onnuri-near) { position: relative; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-scheme-chip { gap: 6px; padding: 0 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-scheme-level { color: var(--ri3-text3); font-size: 12px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-scheme-chip.is-on .voucher-scheme-level { color: inherit; opacity: .72; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-scheme-info { margin: 8px 2px 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-scheme-info:empty { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-schemes { display: flex; flex-direction: column; gap: 0; min-width: 0; margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-filters { display: flex; flex-direction: column; gap: 12px; min-width: 0; margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-category-chips { flex: 1 1 100%; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-pill { padding: 0 12px 0 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-pill-text { pointer-events: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-pill-native { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; margin: 0; padding: 0; border: 0; opacity: 0; font-size: 16px; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-pill:focus-within { outline: 3px solid var(--ri3-primary); outline-offset: 2px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.voucher-nearby, .onnuri-near)[aria-pressed="true"] { color: var(--ri3-bg); }
/* APPLE-S190-CONTRAST-01: the pressed 「가까운 순」 fill was only on ::before, so a reader of the button's own background saw light
   text on a light page (1.0:1). The button itself now carries the same dark fill, inside the same 40px pill. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.voucher-nearby, .onnuri-near)[aria-pressed="true"] { background-color: var(--ri3-text); background-clip: content-box; padding-block: 2px; border-radius: 20px; }
/* ONNURI-CHIP-PRESSED-01 (애플 방 iPad 820·744, 10-27): the same for the picked 분야 chip on a wide screen (the row of chips
   shows from a tablet up): 「전체」 in light text over a fill that was only on ::before read as 1.0:1. The chip itself now carries the
   dark fill; 2px clear top and bottom keep it the same 40px pill inside the 44px touch target. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-chip, .voucher-chip, .voucher-scheme-chip).is-on { border-block: 2px solid transparent; border-radius: 22px; background-color: var(--ri3-text); background-clip: padding-box; }
/* 분야: a PC shows the row; a phone ONE field 「분야 · 전체 ⌄」 and a pick sheet with the same chips (owner 10-26). */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-category-pick { display: flex; flex: 1 1 100%; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-category-field { display: none; gap: 6px; padding: 0 12px 0 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-category-sheet { display: flex; flex-direction: column; gap: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-category-sheet-title { margin: 0; color: var(--ri3-text); font-size: 20px; line-height: 28px; font-weight: 800; letter-spacing: -.4px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .lotbi-sheet.voucher-category-sheet-frame { border-color: var(--ri3-line2); background: var(--ri3-surface); color: var(--ri3-text); }
@media (max-width: 760px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-category-pick > .voucher-category-chips { display: none; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-category-field { display: inline-flex; }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-search { display: flex; gap: 8px; min-width: 0; margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-search-label { display: flex; flex: 1 1 auto; align-items: center; gap: 10px; box-sizing: border-box; min-width: 0; height: 48px; padding: 0 14px; border: 1px solid var(--ri3-line2); border-radius: 14px; background: var(--ri3-surface); color: var(--ri3-text3); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-search-label:focus-within { outline: 3px solid var(--ri3-primary); outline-offset: 2px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-search-input { flex: 1 1 auto; min-width: 0; height: 100%; margin: 0; padding: 0; border: 0; outline: 0; background: transparent; color: var(--ri3-text); font: inherit; font-size: 16px; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-search-input::placeholder { color: var(--ri3-text3); opacity: 1; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-search-button { height: 48px; min-height: 48px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .consumer-feature-note { margin: 0; color: var(--ri3-text2); font-size: 13px; line-height: 19px; font-weight: 500; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-region-note, .onnuri-location-note, .onnuri-map-app, .onnuri-limit-note, .onnuri-category-basis, .voucher-region-note, .voucher-schemes-note, .voucher-map-app, .voucher-nearby-note):empty { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .onnuri-location-note { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.consumer-feature-note) a { color: var(--ri3-primary); font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-status, .voucher-status) { margin: 0; color: var(--ri3-text2); font-size: 15px; line-height: 22px; font-weight: 500; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-status, .voucher-status):empty { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-status, .voucher-status) > .ri3-lh { margin: 4px 0 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-empty-actions) { display: flex; flex-wrap: wrap; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-empty-actions, .onnuri-error, .voucher-error, .voucher-empty, .onnuri-unlocated, .voucher-unlocated) button, .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .onnuri-to-region, .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-official-link { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-height: 44px; padding: 0 14px; border: 1px solid var(--ri3-line2); border-radius: 12px; background: var(--ri3-surface); color: var(--ri3-text); font: inherit; font-size: 15px; font-weight: 600; text-decoration: none; cursor: pointer; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-error, .voucher-error, .onnuri-unlocated, .voucher-unlocated):not([hidden]) { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; color: var(--ri3-text); font-size: 15px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-empty:not([hidden]) { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 18px; border-radius: 18px; background: var(--ri3-surface); box-shadow: var(--ri3-shadow); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-empty-title { margin: 0; color: var(--ri3-text); font-size: 16px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-list, .voucher-list) { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; min-width: 0; filter: var(--onnuri-list-shadow); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-list, .voucher-list):empty { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row, .voucher-row) { box-sizing: border-box; min-width: 0; margin: 0; border: 0; border-radius: 0; background: var(--ri3-surface); box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row, .voucher-row):first-child { border-top-left-radius: 18px; border-top-right-radius: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row, .voucher-row):last-child { border-bottom-left-radius: 18px; border-bottom-right-radius: 18px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-name, .voucher-row-name) { min-width: 0; overflow-wrap: anywhere; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-meta, .voucher-row-meta, .onnuri-row-place, .voucher-row-place) { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-row-status { color: var(--ri3-red); font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-accepts { display: flex; flex-direction: column; gap: 2px; margin: 0; padding: 0; list-style: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-accept > span + span::before { content: " · "; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-accept-name { color: var(--ri3-text2); font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb, .voucher-row-thumb) img { width: 100%; height: 100%; object-fit: cover; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb-glyph, .voucher-row-thumb-glyph) { display: block; width: 28px; height: 28px; background: currentColor; -webkit-mask: var(--onnuri-glyph) center / 28px 28px no-repeat; mask: var(--onnuri-glyph) center / 28px 28px no-repeat; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb, .voucher-row-thumb)[data-tile-kind="CHICKEN"] { color: #E5484D; --onnuri-glyph: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M14.5 4.5a5.5 5.5 0 0 1 4 9.3c-1.6 1.6-4 1.9-5.7 1.3l-3.2 3.2a1.8 1.8 0 1 1-2.6-.4 1.8 1.8 0 1 1-.4-2.6l3.2-3.2c-.6-1.7-.3-4.1 1.3-5.7a5.4 5.4 0 0 1 3.4-1.9z'/></svg>"); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb, .voucher-row-thumb)[data-tile-kind="SNACK"] { color: #C26A00; --onnuri-glyph: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M3.5 11.5h17a8.5 8.5 0 0 1-17 0z'/><path d='M9 4.5c0 1.5 1.2 1.8 1.2 3.2M13.5 4.5c0 1.5 1.2 1.8 1.2 3.2'/></svg>"); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb, .voucher-row-thumb)[data-tile-kind="FOOD"] { color: #C26A00; --onnuri-glyph: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M3.5 11.5h17a8.5 8.5 0 0 1-17 0z'/><path d='M9 4.5c0 1.5 1.2 1.8 1.2 3.2M13.5 4.5c0 1.5 1.2 1.8 1.2 3.2'/></svg>"); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb, .voucher-row-thumb)[data-tile-kind="CAFE"] { color: #8B5E3C; --onnuri-glyph: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4.5 8.5h12v5a6 6 0 0 1-12 0z'/><path d='M16.5 10h1.5a2.5 2.5 0 0 1 0 5h-1.6M8 3.5v2M12 3.5v2'/></svg>"); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb, .voucher-row-thumb)[data-tile-kind="GROCERY"] { color: #0E9F55; --onnuri-glyph: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M3.5 9.5h17l-1.8 9.2a2 2 0 0 1-2 1.8H7.3a2 2 0 0 1-2-1.8z'/><path d='M8 9.5l3-6M16 9.5l-3-6M9 13.5v3.5M15 13.5v3.5'/></svg>"); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb, .voucher-row-thumb)[data-tile-kind="CLOTHING"] { color: #7C3AED; --onnuri-glyph: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M8.5 4L4 6.5l1.8 4 2.2-1V20h8V9.5l2.2 1 1.8-4L15.5 4c-.6 1.5-1.9 2.4-3.5 2.4S9.1 5.5 8.5 4z'/></svg>"); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb, .voucher-row-thumb)[data-tile-kind="BOOK"] { color: #2563EB; --onnuri-glyph: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 5.5A2 2 0 0 1 6 3.5h13v14H6a2 2 0 0 0-2 2z'/><path d='M4 19.5a2 2 0 0 0 2 2h13v-4'/></svg>"); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb, .voucher-row-thumb)[data-tile-kind="HEALTH"] { color: #E5484D; --onnuri-glyph: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><rect x='4' y='3.5' width='16' height='17' rx='3'/><path d='M12 8v7M8.5 11.5h7'/></svg>"); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb, .voucher-row-thumb)[data-tile-kind="EDU"] { color: #2563EB; --onnuri-glyph: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M2.5 9.5L12 5l9.5 4.5L12 14z'/><path d='M6.5 11.5V16c0 1.5 2.5 3 5.5 3s5.5-1.5 5.5-3v-4.5M21.5 9.5v5'/></svg>"); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb, .voucher-row-thumb)[data-tile-kind="LIVING"] { color: var(--ri3-text2); --onnuri-glyph: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 9.5V20h16V9.5M3 9.5l1.5-5h15L21 9.5a3 3 0 0 1-6 0 3 3 0 0 1-6 0 3 3 0 0 1-6 0z'/><path d='M10 20v-5h4v5'/></svg>"); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row-thumb, .voucher-row-thumb)[data-tile-kind="OTHER"] { color: var(--ri3-text2); --onnuri-glyph: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'><path d='M4 9.5V20h16V9.5M3 9.5l1.5-5h15L21 9.5a3 3 0 0 1-6 0 3 3 0 0 1-6 0 3 3 0 0 1-6 0z'/><path d='M10 20v-5h4v5'/></svg>"); }
@media (min-width: 761px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .onnuri-controls { display: grid; grid-template-columns: 420px minmax(0, 1fr); align-items: center; gap: 12px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) .voucher-controls { max-width: 420px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-list, .voucher-list) { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 16px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row, .voucher-row) { border-radius: 0; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row, .voucher-row):nth-child(-n+2) { border-top-left-radius: 18px; border-top-right-radius: 18px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row, .voucher-row):nth-child(-n+2)::before { display: none; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-row, .voucher-row):nth-last-child(-n+2) { border-bottom-left-radius: 18px; border-bottom-right-radius: 18px; }
}
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-more, .voucher-more):disabled { opacity: .6; cursor: progress; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-foot, .voucher-foot) { margin: 0; padding: 0; border: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-source-line, .voucher-source-line) { list-style: none; min-height: 44px; margin: -13px 0; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-source-line, .voucher-source-line)::-webkit-details-marker { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-source-line, .voucher-source-line):focus-visible { outline: 3px solid var(--ri3-primary); outline-offset: 2px; border-radius: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-source-more, .voucher-source-more) { display: inline-flex; flex: none; align-items: center; gap: 2px; color: var(--ri3-text2); font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-foot, .voucher-foot)[open] :is(.onnuri-source-more, .voucher-source-more) svg { transform: rotate(90deg); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-foot, .voucher-foot) > p { margin: 8px 4px 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-foot, .voucher-foot)[open] > p:first-of-type { margin-top: 21px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) :is(.onnuri-surface, .voucher-surface) :is(.onnuri-foot, .voucher-foot) > p:empty { display: none; }
/* ── 시안 03: 온누리상품권·지역화폐 END ── */
/* ── 시안 03: 부동산 실거래가 START ── */
/* board SCR.estate. Built by site-life-real-estate.js (.lotbi-re-*); the 시안 01·02 rules in
   site-life-real-estate.css stay for the detail / 관심 아파트 views and are overridden here. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re { display: flex; flex-direction: column; gap: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re > :not(.lotbi-re-sr-only),
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-panel > * { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-panel { display: flex; flex-direction: column; gap: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .ri3-icon { display: block; flex: none; }
/* underlined tabs */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re > .lotbi-re-tabs { display: flex; gap: 0; padding: 0; overflow: visible; border: 0; border-bottom: 1px solid var(--ri3-line); border-radius: 0; background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-tab { position: relative; flex: 1; height: 48px; min-height: 48px; margin: 0; padding: 0 8px; border: 0; border-radius: 0; background: transparent; color: var(--ri3-text3); font: inherit; font-size: 16px; line-height: 22px; font-weight: 600; box-shadow: none; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-tab .lotbi-re-tab-count { font: inherit; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-tab[aria-selected="true"] { border: 0; background: transparent; color: var(--ri3-text); font-weight: 700; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-tab[aria-selected="true"]::after { content: ""; position: absolute; left: 16px; right: 16px; bottom: -1px; height: 2px; border-radius: 2px; background: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-tab:focus-visible { outline: 3px solid var(--ri3-primary); outline-offset: -3px; }
/* condition card */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-filter-card { display: flex; flex-direction: column; gap: 12px; min-width: 0; margin: 0; padding: 16px; border: 0; border-radius: 18px; background: var(--ri3-surface); box-shadow: var(--ri3-shadow); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-filter-card > * { margin: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-where { display: flex; align-items: center; gap: 10px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-where-icon { display: flex; flex: none; color: var(--ri3-primary); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-where-text { display: flex; flex: 0 1 auto; align-items: center; gap: 8px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-where-name { min-width: 0; overflow: hidden; color: var(--ri3-text); font-size: 17px; line-height: 24px; font-weight: 700; letter-spacing: -.2px; text-overflow: ellipsis; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-where-name.is-empty { color: var(--ri3-text3); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-where-tag { display: inline-flex; align-items: center; flex: none; height: 22px; padding: 0 7px; border-radius: 6px; background: var(--ri3-primary-weak); color: var(--ri3-primary); font-size: 12px; font-weight: 600; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-change { flex: none; height: 42px; min-height: 42px; margin: 0 0 0 auto; padding: 0 14px; border: 1px solid var(--ri3-line2); border-radius: 12px; background: var(--ri3-surface); color: var(--ri3-text); font: inherit; font-size: 15px; font-weight: 600; white-space: nowrap; box-shadow: none; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-change[aria-expanded="true"] { border-color: var(--ri3-primary); background: var(--ri3-primary-weak); color: var(--ri3-primary); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-picker { padding: 12px; border: 0; border-radius: 14px; background: var(--ri3-surface2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re :is(.lotbi-re-selects select, .lotbi-re-region-search input, .lotbi-re-region-hit) { border-color: var(--ri3-line2); border-radius: 12px; background-color: var(--ri3-surface); color: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-name { position: relative; display: flex; align-items: center; gap: 10px; box-sizing: border-box; height: 46px; min-width: 0; margin: 0; padding: 0 14px; border: 1px solid var(--ri3-line2); border-radius: 14px; background: var(--ri3-surface); color: var(--ri3-text3); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-name::before { content: none; display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-name:focus-within { border-color: var(--ri3-primary); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-name input { flex: 1; box-sizing: border-box; width: 100%; height: 100%; min-width: 0; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--ri3-text); font: inherit; font-size: 16px; box-shadow: none; outline: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-name input::placeholder { color: var(--ri3-text3); opacity: 1; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-filter-row { display: flex; align-items: center; gap: 8px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-segment { display: grid; flex: 1; grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 4px; min-width: 0; padding: 4px; border: 0; border-radius: 14px; background: var(--ri3-seg-bg); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-seg { height: 42px; min-height: 42px; min-width: 0; margin: 0; padding: 0 6px; border: 0; border-radius: 10px; background: transparent; color: var(--ri3-text2); font: inherit; font-size: 15px; font-weight: 600; box-shadow: none; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-seg[aria-pressed="true"] { background: var(--ri3-seg-on); color: var(--ri3-text); font-weight: 700; box-shadow: 0 1px 3px rgba(0, 0, 0, .08); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-period-wrap { position: relative; display: flex; flex: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-period { display: inline-flex; align-items: center; gap: 4px; box-sizing: border-box; width: auto; height: 42px; min-height: 42px; margin: 0; padding: 0 12px 0 14px; border: 1px solid var(--ri3-line2); border-radius: 21px; background: var(--ri3-surface); color: var(--ri3-text); font: inherit; font-size: 14px; font-weight: 600; white-space: nowrap; box-shadow: none; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-period::after { content: none; display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-period[aria-expanded="true"] { border-color: var(--ri3-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re :is(.lotbi-re-change, .lotbi-re-seg, .lotbi-re-period, .lotbi-re-more, .lotbi-re-heart, .lotbi-re-foot-summary):focus-visible { outline: 3px solid var(--ri3-primary); outline-offset: 2px; }
/* 「효자동 매매 12개 단지」 · 계약일 최신순 */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-basis { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 4px 0 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-basis:empty { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-basis-count { margin: 0; color: var(--ri3-text); font-size: 18px; line-height: 26px; font-weight: 700; letter-spacing: -.3px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-basis-number { color: var(--ri3-primary); font-size: inherit; font-style: normal; font-weight: inherit; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-basis-order { margin: 0; color: var(--ri3-text3); font-size: 13px; font-weight: 500; white-space: nowrap; }
/* complex cards: one list, two columns on PC */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re [data-re-panel="region"] .lotbi-re-list { display: flex; flex-direction: column; gap: 0; margin: 0; padding: 0; overflow: hidden; list-style: none; border-radius: 18px; background: var(--ri3-surface); box-shadow: var(--ri3-shadow); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re [data-re-panel="region"] .lotbi-re-list:empty { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card { position: relative; display: block; min-width: 0; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card + .lotbi-re-card::before { content: ""; position: absolute; top: 0; left: 18px; right: 18px; height: 1px; background: var(--ri3-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card .lotbi-re-row-main { display: block; box-sizing: border-box; width: 100%; min-height: 0; margin: 0; padding: 18px; border: 0; border-radius: inherit; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card .lotbi-re-row-main:focus-visible { outline: 3px solid var(--ri3-primary); outline-offset: -3px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card .lotbi-re-row-copy { display: flex; flex-direction: column; gap: 0; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card .lotbi-re-row-name { display: -webkit-box; overflow: hidden; margin: 0; padding: 0 50px 0 0; color: var(--ri3-text); font-size: 17px; line-height: 24px; font-weight: 700; letter-spacing: -.3px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card .lotbi-re-row-address { overflow: hidden; margin: 0; padding: 0 50px 0 0; color: var(--ri3-text3); font-size: 13px; line-height: 18px; font-weight: 400; text-overflow: ellipsis; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card .lotbi-re-price { margin: 10px 0 0; color: var(--ri3-text); font-size: 26px; line-height: 32px; font-weight: 800; letter-spacing: -.8px; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card .lotbi-re-price[data-re-cancelled="true"] { color: var(--ri3-text3); text-decoration: line-through; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card .lotbi-re-row-deal { margin: 2px 0 0; color: var(--ri3-text2); font-size: 14px; line-height: 20px; font-weight: 400; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card .lotbi-re-row-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 0; margin: 12px 0 0; padding: 12px 0 0; border-top: 1px solid var(--ri3-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card .lotbi-re-row-count { color: var(--ri3-text3); font-size: 13px; line-height: 18px; font-weight: 400; font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card .lotbi-re-row-open { display: flex; align-items: center; gap: 0; min-height: 0; margin-left: auto; color: var(--ri3-primary); font-size: 14px; line-height: 20px; font-weight: 700; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card .lotbi-re-row-open::after { content: none; display: none; }
/* ♡ / ♥: a 40px circle in a 44px button, top-right */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-heart { position: relative; display: flex; align-items: center; justify-content: center; box-sizing: border-box; flex: none; width: 44px; height: 44px; min-width: 44px; min-height: 44px; margin: 0; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--ri3-text); box-shadow: none; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-heart::before { content: ""; position: absolute; inset: 2px; border: 1px solid var(--ri3-line); border-radius: 50%; background: var(--ri3-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-heart .lotbi-re-heart-icon { position: relative; width: 20px; height: 20px; background: none; -webkit-mask: none; mask: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-heart[aria-pressed="true"] { color: var(--ri3-red); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-heart[aria-pressed="true"]::before { border-color: var(--ri3-red-weak); background: var(--ri3-red-weak); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-heart:hover { background: transparent; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-card > .lotbi-re-heart { position: absolute; top: 16px; right: 16px; }
/* 「8개 단지 더 보기 ⌄」, the source line */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-more { display: flex; align-items: center; justify-content: center; justify-self: stretch; gap: 4px; box-sizing: border-box; width: 100%; min-width: 0; height: 52px; min-height: 52px; margin: 0; padding: 0 16px; border: 0; border-radius: 14px; background: var(--ri3-surface); color: var(--ri3-text); font: inherit; font-size: 15px; font-weight: 600; box-shadow: var(--ri3-shadow); cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-status { margin: 0; color: var(--ri3-text2); font-size: 14px; line-height: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-foot { margin: 0; padding: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-foot-summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; padding: 0 4px; color: var(--ri3-text3); font-size: 13px; line-height: 18px; font-weight: 400; list-style: none; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-foot-source { font-size: 13px; font-weight: 400; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-foot-more { display: inline-flex; align-items: center; gap: 2px; margin-left: auto; color: var(--ri3-text2); font-size: 13px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-notice { margin: 0 4px 8px; color: var(--ri3-text2); font-size: 13px; line-height: 20px; }
@media (min-width: 761px) {
  /* one row: 📍 동네 [동네 변경] | 아파트 이름 | 매매·전세·월세 | 3개월 */
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-filter-card { display: grid; grid-template-columns: auto minmax(0, 1fr) 300px auto; align-items: center; gap: 12px; padding: 12px 12px 12px 18px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-where { grid-column: 1; grid-row: 1; gap: 8px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-change { margin-left: 6px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-name { grid-column: 2; grid-row: 1; height: 44px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-filter-row { display: contents; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-segment { grid-column: 3; grid-row: 1; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-period-wrap { grid-column: 4; grid-row: 1; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re .lotbi-re-picker { grid-column: 1 / -1; grid-row: 2; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re [data-re-panel="region"] .lotbi-re-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 16px; row-gap: 0; overflow: visible; border-radius: 0; background: transparent; box-shadow: none; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re [data-re-panel="region"] .lotbi-re-card { background: var(--ri3-surface); }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re [data-re-panel="region"] .lotbi-re-card:nth-child(-n+2) { border-top-left-radius: 18px; border-top-right-radius: 18px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re [data-re-panel="region"] .lotbi-re-card:nth-last-child(-n+2) { border-bottom-left-radius: 18px; border-bottom-right-radius: 18px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .lotbi-re [data-re-panel="region"] .lotbi-re-card:nth-child(2)::before { content: none; }
}
/* ── 시안 03: 부동산 실거래가 END ── */
/* ── 시안 03: 내 아이 학교·유치원 + 아이 위치 START ── */
/* ── 시안 03: 내 아이 학교·유치원 + 아이 위치 END ── */
/* ── BULKY-WASTE-DESIGN-01: 대형폐기물 버리기 (준비 중, design only) START ──
   A grey 「준비 중」 pill on the card and on every step; the one button is
   disabled and looks it. Nothing here is a link or sends anything. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-badge { display: inline-flex; align-items: center; height: 22px; padding: 0 8px; border-radius: 999px; background: var(--ri-sub); color: var(--ri-text-3); font-size: 12px; font-weight: 700; line-height: 1; letter-spacing: -.01em; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .consumer-shortcut-preparing { margin-top: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-screen { display: grid; gap: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-head { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-head .bw-title { margin: 0; color: var(--ri-text); font-size: 24px; font-weight: 800; letter-spacing: -.03em; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-title:focus { outline: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-intro { margin: 0; color: var(--ri-text-2); font-size: 15px; line-height: 1.6; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-steps { display: grid; gap: 10px; margin: 4px 0 0; padding: 0; list-style: none; counter-reset: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step { position: relative; display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; align-items: center; gap: 12px; min-height: 76px; padding: 14px; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-card); background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step + .bw-step::before { content: ''; position: absolute; top: -11px; left: 37px; width: 2px; height: 10px; background: var(--ri-line-strong); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step-mark { position: relative; display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 14px; background: var(--ri-green-soft); color: var(--ri-green); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step-icon { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step-number { position: absolute; top: -6px; left: -6px; display: flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 50%; background: var(--ri-green); color: var(--ri-surface); font-size: 12px; font-weight: 800; line-height: 1; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step-copy { display: grid; gap: 3px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step-title { color: var(--ri-text); font-size: 16px; font-weight: 700; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step-text { color: var(--ri-text-3); font-size: 13px; line-height: 1.45; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-region { display: flex; align-items: center; gap: 8px; margin: 0; padding: 12px 14px; border-radius: var(--ri-radius-control); background: var(--ri-blue-soft); color: var(--ri-blue-text); font-size: 14px; font-weight: 600; line-height: 1.45; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-region-icon { flex: 0 0 18px; width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-disabled { width: 100%; min-height: 52px; border: 0; border-radius: var(--ri-radius-control); background: var(--ri-sub); color: var(--ri-text-3); font: inherit; font-size: 15px; font-weight: 700; cursor: not-allowed; opacity: 1; }
@media (max-width: 600px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-head .bw-title { font-size: 21px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step { grid-template-columns: 44px minmax(0, 1fr); padding: 12px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step-mark { width: 44px; height: 44px; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step > .bw-badge { grid-column: 2; justify-self: start; }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step + .bw-step::before { left: 33px; }
}
/* ── BULKY-WASTE-DESIGN-01 END ── */
/* BULKY-WASTE-DESIGN-01: ten cards on the four-column grid leave two in the last row;
   each takes two columns, so no cell is empty (an odd count keeps the last-card full-row rule). */
@media (min-width: 601px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .consumer-shortcuts > .consumer-shortcut:nth-child(4n+1):nth-last-child(2),
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .consumer-shortcuts > .consumer-shortcut:nth-child(4n+2):last-child { grid-column: span 2; }
  /* BULKY-WASTE-08 (Gate s77): eleven cards leave three in the last row, and the odd-last full-row rule pushed
     내 아이 to a row of its own (two empty cells). The last of three takes two columns instead. */
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .consumer-shortcuts > .consumer-shortcut:nth-child(4n+3):last-child { grid-column: span 2; }
}
/* BULKY-WASTE-REPORT-DESIGN-03: [폐기물 신고] [불법 폐기물 신고] and their two screens. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-report-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-report-open { min-height: 52px; padding: 0 12px; border: 0; border-radius: var(--ri-radius-control); background: var(--ri-blue); color: var(--ri-on-blue); font: inherit; font-size: 15px; font-weight: 700; cursor: pointer; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-report-open.is-illegal { background: var(--ri-red-soft); color: var(--ri-red-text); box-shadow: inset 0 0 0 1px var(--ri-red-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-back { justify-self: start; min-height: 44px; padding: 0; border: 0; background: transparent; color: var(--ri-text-2); font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-box { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; min-height: 200px; border: 1.5px dashed var(--ri-line-strong); border-radius: var(--ri-radius-card); background: var(--ri-sub); color: var(--ri-text-3); font-size: 14px; overflow: hidden; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-box.has-photo { border-style: solid; border-color: var(--ri-line); background: var(--ri-sub); }
/* BULKY-WASTE-PHOTO-LOADING-34: what the photo is doing, over the photo. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-box.has-photo { position: relative; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-busy { position: absolute; left: 0; right: 0; bottom: 0; display: grid; gap: 8px; padding: 14px 16px 16px; background: linear-gradient(transparent, rgb(0 0 0 / 72%) 30%); color: #fff; font-size: 15px; font-weight: 700; line-height: 1.45; text-align: center; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-busy[hidden] { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-busy-spinner { justify-self: center; display: block; width: 28px; height: 28px; border: 3px solid rgb(255 255 255 / 30%); border-top-color: #fff; border-radius: 50%; animation: bw-photo-spin .9s linear infinite; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-busy-spinner[hidden] { display: none; }
@keyframes bw-photo-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-busy-spinner { animation-duration: 2.4s; } }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-retry { justify-self: center; min-height: 44px; padding: 0 18px; border: 0; border-radius: var(--ri-radius-control); background: #fff; color: #111; font: inherit; font-size: 15px; font-weight: 800; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-retry[hidden] { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-glyph { width: 36px; height: 36px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-img { display: block; width: 100%; max-height: 320px; object-fit: contain; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-button { min-height: 48px; border: 1px solid var(--ri-blue-line); border-radius: var(--ri-radius-control); background: var(--ri-blue-soft); color: var(--ri-blue-text); font: inherit; font-size: 15px; font-weight: 700; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-item { display: flex; align-items: center; gap: 10px; margin: 0; padding: 14px; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-control); background: var(--ri-surface); font-size: 15px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-item-label { color: var(--ri-text-3); font-size: 13px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-item-hint { color: var(--ri-text-3); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-item-value { color: var(--ri-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-field { display: grid; gap: 6px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-field-label { color: var(--ri-text-2); font-size: 14px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-input { width: 100%; min-height: 48px; box-sizing: border-box; padding: 10px 12px; border: 1px solid var(--ri-line-strong); border-radius: var(--ri-radius-control); background: var(--ri-surface); color: var(--ri-text); font: inherit; font-size: 16px; }
/* App: 16px keeps iPhone from zooming the page when a field is tapped (지역정보 code check 10-26). */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-textarea { min-height: 96px; resize: vertical; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-submit { min-height: 52px; border: 0; border-radius: var(--ri-radius-control); background: var(--ri-blue); color: var(--ri-on-blue); font: inherit; font-size: 16px; font-weight: 700; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-report-status { margin: 0; min-height: 20px; color: var(--ri-text-2); font-size: 14px; font-weight: 600; text-align: center; }
/* BULKY-WASTE-01: the working 전북 screen (site-life-bulky-waste-live.js), same tokens and steps. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-badge-live { background: var(--ri-green-soft); color: var(--ri-green); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-district { display: flex; align-items: center; gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-district-label { color: var(--ri-text-2); font-size: 14px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-select { flex: 1; min-height: 48px; padding: 0 12px; border: 1px solid var(--ri-line-strong); border-radius: var(--ri-radius-control); background: var(--ri-surface); color: var(--ri-text); font: inherit; font-size: 16px; font-weight: 600; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step-live { grid-template-columns: 48px minmax(0, 1fr); align-items: start; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step-live .bw-step-copy { gap: 8px; grid-template-columns: minmax(0, 1fr); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-action { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 16px; border: 0; border-radius: var(--ri-radius-control); background: var(--ri-blue); color: var(--ri-on-blue); font: inherit; font-size: 15px; font-weight: 700; text-decoration: none; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-action:disabled { opacity: .55; cursor: progress; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-action-secondary { background: var(--ri-blue-soft); color: var(--ri-blue-text); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-search { display: flex; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-search-input { flex: 1; min-width: 0; min-height: 48px; padding: 0 12px; border: 1px solid var(--ri-line-strong); border-radius: var(--ri-radius-control); background: var(--ri-surface); color: var(--ri-text); font: inherit; font-size: 16px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-status { margin: 0; color: var(--ri-text-2); font-size: 14px; line-height: 1.5; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-result { display: grid; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-seen { display: grid; gap: 2px; margin: 0; color: var(--ri-text); font-size: 15px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-seen-detail { color: var(--ri-text-3); font-size: 13px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-fees { display: grid; margin: 0; padding: 0; list-style: none; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-control); overflow: hidden; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-fee { display: flex; justify-content: space-between; gap: 12px; padding: 10px 12px; font-size: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-fee + .bw-fee { border-top: 1px solid var(--ri-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-fee-name { min-width: 0; color: var(--ri-text-2); word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-fee-price { flex: 0 0 auto; color: var(--ri-text); font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-free { display: grid; gap: 4px; padding: 12px; border-radius: var(--ri-radius-control); background: var(--ri-green-soft); color: var(--ri-text); font-size: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-free-link { color: var(--ri-green); font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-official { justify-self: start; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-later { display: flex; align-items: center; gap: 6px; margin: 0; color: var(--ri-text-3); font-size: 13px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-source { margin: 0; }
@media (max-width: 600px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-step-live { grid-template-columns: 44px minmax(0, 1fr); }
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-official { justify-self: stretch; }
}
/* BULKY-WASTE-05: the application flow (site-life-bulky-waste-live.js) -- five numbered steps, a cart and the payment notice. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-district { flex-wrap: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-here { display: inline-flex; align-items: center; gap: 4px; flex: 0 0 auto; min-height: 48px; padding: 0 12px; border: 1px solid var(--ri-blue-line); border-radius: var(--ri-radius-control); background: var(--ri-blue-soft); color: var(--ri-blue-text); font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-here-icon { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-place-status { margin: -6px 0 0; min-height: 0; color: var(--ri-text-3); font-size: 13px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-place-status:empty { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-flow-step { display: grid; gap: 12px; min-width: 0; padding: 16px; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-card); background: var(--ri-surface); }
/* BULKY-WASTE-FOLD-08: at 700-760px (two columns, a Fold open) [사진첩에서 고르기] and [찾기] stuck 20px out of the card --
   the step's one grid column took the buttons' min-content. The column now shrinks and a button's words wrap. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-flow-step { grid-template-columns: minmax(0, 1fr); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-photo-button { min-width: 0; padding: 4px 8px; white-space: normal; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-flow-head { display: flex; align-items: center; gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-flow-number { display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; border-radius: 50%; background: var(--ri-green); color: var(--ri-surface); font-size: 14px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-flow-title { margin: 0; color: var(--ri-text); font-size: 17px; font-weight: 800; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-fee-choice { list-style: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-fee-choice + .bw-fee-choice { border-top: 1px solid var(--ri-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) button.bw-fee { width: 100%; min-height: 48px; border: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) button.bw-fee:active { background: var(--ri-blue-soft); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-cart { display: grid; gap: 8px; padding: 12px; border-radius: var(--ri-radius-control); background: var(--ri-sub); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-cart-title { color: var(--ri-text); font-size: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-cart-list { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-cart-line { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 6px 10px; font-size: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-cart-name { grid-column: 1 / -1; color: var(--ri-text-2); word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-counter { display: inline-flex; align-items: center; gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-count { width: 44px; height: 44px; border: 1px solid var(--ri-line-strong); border-radius: 50%; background: var(--ri-surface); color: var(--ri-text); font: inherit; font-size: 18px; font-weight: 700; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-cart-price { color: var(--ri-text); font-variant-numeric: tabular-nums; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-cart-total { display: flex; justify-content: space-between; margin: 0; padding-top: 8px; border-top: 1px solid var(--ri-line-strong); color: var(--ri-text); font-size: 15px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-hint { margin: 0; color: var(--ri-text-3); font-size: 13px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-summary { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 8px 12px; margin: 0; font-size: 14px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-summary dt { color: var(--ri-text-3); font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-summary dd { margin: 0; color: var(--ri-text); word-break: keep-all; overflow-wrap: anywhere; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-dialog { position: fixed; inset: 0; z-index: 2000; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgb(0 0 0 / 45%); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-dialog[hidden] { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-dialog-card { display: grid; gap: 16px; width: min(320px, 100%); padding: 24px 20px 20px; border-radius: 18px; background: var(--ri-surface); text-align: center; box-shadow: 0 12px 40px rgb(0 0 0 / 20%); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-dialog-text { margin: 0; color: var(--ri-text); font-size: 17px; font-weight: 700; line-height: 1.5; word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-place-row { display: flex; gap: 8px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-place-row > .bw-input { flex: 1; min-width: 0; }
/* 회원 신고 2973611b: addresses found for what was typed in 배출 주소, to pick one. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-address-suggest { display: grid; margin: 6px 0 0; padding: 4px 0; list-style: none; border: 1px solid var(--ri-line-strong); border-radius: var(--ri-radius-control); background: var(--ri-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-address-suggest[hidden] { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-address-suggest-item + .bw-address-suggest-item { border-top: 1px solid var(--ri-line); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-address-pick { display: grid; gap: 2px; width: 100%; min-height: 48px; padding: 10px 14px; border: 0; background: transparent; color: var(--ri-text); font: inherit; font-size: 15px; line-height: 22px; text-align: left; word-break: keep-all; overflow-wrap: anywhere; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-address-jibun { color: var(--ri-text-3); font-size: 13px; line-height: 19px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-illegal { display: grid; gap: 8px; padding-top: 8px; border-top: 1px dashed var(--ri-line-strong); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-illegal > .bw-report-open { width: 100%; }
/* BULKY-WASTE-KIND-CHECK-04: two candidate kinds, each over its own 규격 rows. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-check-title { display: block; margin: 14px 0 6px; color: var(--ri-text); font-size: 15px; font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-other-size { justify-self: start; min-height: 44px; margin: 4px 0 8px; padding: 0 14px; border: 1px solid var(--ri-line); border-radius: var(--ri-radius-control); background: transparent; color: var(--ri-text-2); font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-fees[hidden] { display: none; }
/* BULKY-WASTE-FOLD-05: the report's place on up to two lines; two columns from 700px (Galaxy Z Fold7 open). */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-place-row { align-items: flex-start; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-place-text { min-height: 48px; resize: none; line-height: 22px; padding-top: 12px; padding-bottom: 12px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-cols { display: grid; gap: 16px; min-width: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-col { display: grid; gap: 16px; align-content: start; min-width: 0; }
@media (min-width: 700px) {
  .consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-cols { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; }
}
/* BULKY-WASTE-APPLY-LINK-07: [결제하기] in 전주시 without a 구 in the address -- a 구청 button each. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-dialog-more { display: grid; gap: 10px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-dialog-more:empty { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-dialog-link { display: flex; align-items: center; justify-content: center; text-decoration: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-official-text { width: 100%; min-height: 150px; box-sizing: border-box; padding: 12px; border: 1px solid var(--ri-line-strong); border-radius: var(--ri-radius-control); background: var(--ri-surface); color: var(--ri-text); font: inherit; font-size: 14px; line-height: 1.5; resize: vertical; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-official-text[hidden] { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-official-guide { margin: 0; color: var(--ri-text-2); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-dialog-more:not(:empty) ~ .bw-dialog-close { background: var(--ri-sub); color: var(--ri-text); box-shadow: inset 0 0 0 1px var(--ri-line); }

/* LIFEINFO-DEV-28 (소유자 10-25 「폐기물이랑 학교 박스가 길어, 통일성 유지해 다른 것처럼」): the last odd card (폐기물 신고 · 내 아이) took the whole
   row on phones and two columns on wide screens. Every 지역정보 card is one cell now, like the others; a short last row stays short. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04):not(#ri-05) .consumer-shortcuts > .consumer-shortcut { grid-column: auto; }
/* BULKY-WASTE-DISTRICT-SHEET-16: 시·군 is one field; the shared bottom sheet (55% at most, SITE-SHEET-SLIDE-01) lists the 14. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-district-field { flex: 1; min-width: 0; min-height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 0 14px; border: 1px solid var(--ri-line-strong); border-radius: var(--ri-radius-control); background: var(--ri-surface); color: var(--ri-text); font: inherit; font-size: 16px; font-weight: 600; text-align: left; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-district-field:disabled { color: var(--ri-text-3); cursor: default; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-04) .bw-district-chev { width: 16px; height: 16px; flex: none; transform: rotate(90deg); }
.bw-district-sheet .bw-district-sheet-title { display: block; margin: 4px 0 12px; font-size: 17px; font-weight: 700; color: #191F28; }
.bw-district-sheet .bw-district-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.bw-district-sheet .bw-district-option { min-height: 48px; border: 1px solid #E5E8EB; border-radius: 12px; background: #fff; color: #191F28; font: inherit; font-size: 16px; font-weight: 600; cursor: pointer; }
.bw-district-sheet .bw-district-option[aria-pressed="true"] { border-color: #3182F6; background: #EEF4FF; color: #1B64DA; }
/* BULKY-WASTE-REGIONS-37: 시·도 first when more than one is listed. */
.bw-district-sheet .bw-district-provinces { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 12px; }
.bw-district-sheet .bw-district-province { min-height: 40px; padding: 0 14px; border: 1px solid #E5E8EB; border-radius: 999px; background: #fff; color: #4E5968; font: inherit; font-size: 15px; font-weight: 600; cursor: pointer; }
.bw-district-sheet .bw-district-province[aria-pressed="true"] { border-color: #191F28; background: #191F28; color: #fff; }

/* A <select> on a phone opens a pick sheet (ri3SelectSheet): a button over its box, a phone only (owner 10-26). */
.consumer-workspace[data-workspace="life"]:not(#ri) .ri3-select-sheet-trigger { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri) .ri3-select-sheet-host { position: relative; }
@media (max-width: 760px) {
  .consumer-workspace[data-workspace="life"]:not(#ri) .ri3-select-sheet-trigger {
    display: block; position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; margin: 0; padding: 0;
    border: 0; border-radius: inherit; background: transparent; cursor: pointer;
  }
  .consumer-workspace[data-workspace="life"]:not(#ri) .ri3-select-sheet-trigger:focus-visible { outline: 3px solid var(--ri3-primary, var(--ri-blue-line)); outline-offset: 2px; }
}

/* LIFE-HEADING-FOCUS-RING-01 (아이폰 웹뷰 점검 10-26): every 지역정보 screen moves focus to its title when it opens so a
   screen reader starts there. That focus came from script, not from the person, yet the dark theme's !important
   [tabindex]:focus-visible ring (and the popup title's light ring) drew a box around the title on a phone. A title is
   not a control, so the ring stays off it; buttons, fields and links keep theirs. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-05) :is(h1, h2, h3, h4)[tabindex="-1"]:is(:focus, :focus-visible) { outline: none !important; box-shadow: none !important; }

/* 소유자 10-29 00:20 (운영 병원·응급실 목록): the photo credit sits on the picture -- small, the name only -- not as a text line;
   a 「의료법인 ○○의료재단」 head is a small line above the hospital's own name. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-media { position: relative; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-media .medical-photo-attribution { position: absolute; right: 0; bottom: 0; left: 0; overflow: hidden; padding: 2px 4px; background: var(--ri3-scrim); color: var(--ri3-on-primary); font-size: 10px; font-weight: 500; line-height: 12px; text-overflow: ellipsis; white-space: nowrap; pointer-events: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place-name { flex-wrap: wrap; row-gap: 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place-name .medical-card-name { word-break: keep-all; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place-name .medical-card-corp { flex: 0 0 100%; overflow: hidden; color: var(--ri3-text2); font-size: 13px; font-weight: 500; line-height: 18px; text-overflow: ellipsis; white-space: nowrap; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-place-name.has-corp .medical-card-name { flex: 0 1 auto; min-width: 0; overflow-wrap: anywhere; }
/* 7번 실사용 점검 10-29: the hours and whole address a card opens on a tap. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-body[role="button"] { cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-more { margin-top: 6px; color: var(--ri3-text2); font-size: 14px; line-height: 20px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-more p { margin: 2px 0 0; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-card-more[hidden] { display: none; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-moonlight { margin: 0 0 12px; padding: 12px 14px; border-radius: 12px; background: var(--ri3-surface); color: var(--ri3-text); font-size: 15px; line-height: 22px; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-moonlight a { color: var(--ri3-primary, var(--ri-blue)); font-weight: 700; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .medical-ri3 .medical-moonlight[hidden] { display: none; }

/* 마스터 10-29: popups that cluster at one place are folded under it. */
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .popup-group { grid-column: 1 / -1; margin: 0 0 12px; border: 1px solid var(--ri3-line); border-radius: 16px; background: var(--ri3-surface); }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .popup-group-title { box-sizing: border-box; min-height: 52px; padding: 14px 16px; color: var(--ri3-text); font-size: 16px; line-height: 24px; font-weight: 700; cursor: pointer; }
.consumer-workspace[data-workspace="life"]:not(#ri):not(#ri-03) .popup-group[open] > .festival-card { margin: 0 12px 12px; }
