.tb-prof { flex: none; display: inline-flex; align-items: center; gap: 6px; text-decoration: none; color: var(--ink); border-radius: 24px; padding: 2px; -webkit-tap-highlight-color: transparent; }
.tb-prof .av { display: block; width: 36px; height: 36px; border-radius: 50%; }
.tb-prof .av .pom-av { width: 36px; height: 36px; display: block; }
.tb-prof .nm { font-size: 12.5px; font-weight: 700; color: #4B6478; }
.tb-prof.on .av { box-shadow: 0 0 0 2.5px #C98AA6; }
.tb-prof:focus-visible, .tb-sos:focus-visible { outline: 3px solid #7AA7C7; outline-offset: 2px; }
.topbar .brand { gap: 6px; }
@media (max-width: 520px) { .topbar .brand-mark { display: none; } }
.tb-sos { position: relative; gap: 5px; font-weight: 800; }
.tb-sos svg { width: 18px !important; height: 18px !important; display: inline-block !important; }
.tb-sos.on { box-shadow: 0 0 0 2px #C98AA6 !important; }
.tb-sos .badge, .hp-row .badge { position: absolute; top: -6px; inset-inline-start: -6px; min-width: 19px; height: 19px; padding: 0 5px; border-radius: 10px; background: #875167; color: #fff; font: 700 11px/19px Vaz, Tahoma, sans-serif; font-style: normal; filter: none; box-shadow: 0 0 0 2px #fff; display: inline-block; text-align: center; gap: 0; }
.hp-row .badge { position: static; margin-inline-start: auto; }

.t-today { --tc: var(--garden); } .t-garden { --tc: #3F8A4F; } .t-tools { --tc: var(--lapis); }
.tab.t-garden.on { background: #E3F2E1; color: #2F6B3A; }
.tab.t-tools.on { background: #E0EDF8; color: #315F82; }
.tab.t-today.on { background: #FBEFD6; color: #7A5A12; }

.hp-urgent { margin-top: 6px; padding: 16px; border-radius: 26px; background: linear-gradient(135deg, #F7DCE1, #FDF0F1); border: 1px solid #EDC9D1; box-shadow: var(--sh3); }
.hp-uhd { display: flex; align-items: center; gap: 12px; }
.hp-ui { flex: none; width: 50px; height: 50px; border-radius: 50%; display: grid; place-items: center; background: #fff; color: #A8384A; box-shadow: 0 2px 8px rgba(150, 50, 66, .14); }
.hp-ui svg { width: 30px; height: 30px; }
.hp-urgent h2 { margin: 0; font-size: 21px; color: #5E1F2C; }
.hp-urgent p { margin: 2px 0 0; color: #6B3440; font-size: 14.5px; }
.hp-urgent .call-list { margin-top: 12px; }
.hp-urgent .call-btn { padding: 11px 14px; }
.hp-urgent .call-btn > svg { width: 40px; height: 40px; padding: 9px; }
.hp-urgent > .btn { margin-top: 12px; }
.hp-more { display: flex; align-items: center; gap: 10px; margin-top: 12px; padding: 10px 12px; border-radius: 16px; background: #FFFFFFB8; color: #5E1F2C !important; text-decoration: none; }
.hp-more > span { flex: 1; min-width: 0; display: flex; flex-direction: column; }
.hp-more b { font-size: 15px; } .hp-more small { color: #74515A; font-size: 13px; }
.hp-more .chev, .hp-row .chev, .tl-row .chev { transform: scaleX(-1); color: #B6C2CB; width: 18px; height: 18px; flex: none; }
.hp-list, .tl-list { display: grid; gap: 10px; }
.hp-row, .tl-row { position: relative; display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 22px; background: #fff; border: 1px solid #E4ECE7; box-shadow: var(--sh3); text-decoration: none; color: var(--ink) !important; min-height: 72px; }
.hp-row:active, .tl-row:active { transform: translateY(1px) scale(.995); }
.hp-art { flex: none; width: 50px; height: 50px; border-radius: 50%; display: grid; place-items: center; overflow: hidden; }
.hp-art > svg { width: 26px; height: 26px; }
.hp-art .pom-av { width: 50px !important; height: 50px !important; }
.hp-yavar .hp-art { background: #DDF1EA; } .hp-talk .hp-art { background: #E3E6F7; color: #4A55A0; } .hp-kin .hp-art { background: #DDF0E2; color: #2F7A5F; }
.hp-t, .tl-t { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.hp-t b, .tl-t b { font-size: 17px; line-height: 1.5; } .hp-t small, .tl-t small { color: var(--muted); font-size: 13px; line-height: 1.6; }
.hp-note { display: flex; align-items: center; gap: 8px; margin: 14px 0 0; padding: 10px 14px; border-radius: 16px; background: #ECEAF8; color: #4A4580; font-size: 13.5px; }
.hp-note svg { width: 20px; height: 20px; flex: none; }

.tl-search { position: relative; margin: 6px 0 14px; }
.tl-search > svg { position: absolute; inset-inline-end: 16px; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; color: var(--muted); pointer-events: none; }
.tl-search input { width: 100%; height: 50px; border-radius: 25px; border: 1px solid #DCE6E2; background: #fff; padding: 0 18px; padding-inline-end: 46px; font: 500 15.5px Vaz, Tahoma, sans-serif; color: var(--ink); box-shadow: var(--sh3); }
.tl-search input:focus { outline: none; border-color: #8DB4CC; box-shadow: 0 0 0 3px #DCEAF3; }
.tl-ic { flex: none; width: 50px; height: 50px; border-radius: 50%; display: grid; place-items: center; background: color-mix(in srgb, var(--c) 14%, #fff); color: color-mix(in srgb, var(--c) 82%, #1E3440); }
.tl-ic svg { width: 26px; height: 26px; }
.tl-foot { display: flex; align-items: center; gap: 10px; margin-top: 18px; padding: 8px 4px; color: var(--muted); font-size: 13.5px; }
.tl-foot p { margin: 0; }
.tl-res .sec-h:first-of-type { margin-top: 6px; }

.nav-guide { margin: 4px 0 14px; padding: 16px; border-radius: 24px; background: linear-gradient(130deg, #E6F1F8, #EDF5EA); border: 1px solid #D7E6E0; }
.nav-guide h2 { margin: 0 0 2px; font-size: 18px; color: #294B58; }
.nav-guide ul { list-style: none; margin: 10px 0 12px; padding: 0; display: grid; gap: 8px; }
.nav-guide li { display: flex; align-items: center; gap: 10px; font-size: 14.5px; line-height: 1.7; }
.nav-guide li svg { flex: none; width: 34px; height: 34px; padding: 7px; border-radius: 50%; background: #FFFFFFC8; color: #356C8B; }

@media (max-width: 360px) {
  .tb-prof .av, .tb-prof .av .pom-av { width: 32px; height: 32px; }
  .hp-row, .tl-row { padding: 10px 12px; gap: 10px; }
  .hp-art, .tl-ic { width: 44px; height: 44px; }
  .hp-t b, .tl-t b { font-size: 16px; }
}

.today-head { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; margin: 4px 2px 12px; }
.today-head small { flex-basis: 100%; color: var(--muted); font-size: 13px; }
.today-head h1 { margin: 0; font-size: 25px; color: #294B58; flex: 1; min-width: 0; }
html[lang="en"] .today-head h1 { flex-basis: 100%; }
html[lang="en"] .tab span { font-size: 13px; letter-spacing: -.01em; }
.ci-chip { display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px 5px 8px; border-radius: 20px; background: #E3F1E7; color: #2F6B4A !important; text-decoration: none; font-size: 13.5px; font-weight: 700; }
.ci-chip > svg { width: 18px; height: 18px; }
.ci-chip .pom-face { width: 26px; height: 26px; }
.tm-card { position: relative; margin-top: 4px; padding: 18px 16px 12px; border-radius: 28px; background: linear-gradient(125deg, #D7ECDF, #EEF6EA); border: 1px solid #FFFFFF9C; display: flex; flex-wrap: wrap; align-items: flex-end; gap: 6px; overflow: hidden; }
.tm-card.tm-night { background: linear-gradient(140deg, #DCD8F4, #ECE7FA); }
.tm-card.tm-support { background: linear-gradient(135deg, #F7E4D3, #FCF1E6); }
.tm-card.tm-recheck { background: linear-gradient(135deg, #FBEFD6, #FFF8EA); }
.tm-in { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.tm-k { color: #4F6970; font-size: 13px; font-weight: 700; }
.tm-card h2 { margin: 0; font-size: 22px; line-height: 1.5; color: #263E48; }
.tm-card p { margin: 0; color: #4F6970; font-size: 14.5px; line-height: 1.8; }
.tm-go { align-self: flex-start; margin-top: 6px; display: inline-flex; align-items: center; gap: 8px; background: #2F6B52 !important; color: #fff !important; border-color: #2F6B52 !important; border-radius: 26px; padding: 0 22px; }
.tm-go svg { width: 18px; height: 18px; }
.tm-why summary { cursor: pointer; color: #2F6B8A; font-size: 13.5px; text-decoration: underline; text-underline-offset: 3px; list-style: none; }
.tm-why summary::-webkit-details-marker { display: none; }
.tm-why p { margin-top: 4px; font-size: 13.5px; }
.tm-card > .pom-mascot { flex: none; --pom-size: 96px; margin-bottom: 4px; }
.tm-calls { flex-basis: 100%; }
.tm-other { flex-basis: 100%; margin-top: 4px; background: none; border: 0; padding: 8px 0 2px; color: #2F6B8A; font: 700 14px Vaz, Tahoma, sans-serif; text-align: start; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.tm-garden { display: flex; flex-direction: column; flex-wrap: nowrap; margin-top: 14px; }
.tm-garden .gf-mini { width: 100%; max-width: 560px; align-self: center; }
.tm-gl { flex-basis: 100%; margin-top: 6px; font-size: 14px; color: #3D6253; font-weight: 700; }
.ex-end { margin-top: 14px; padding: 16px; border-radius: 24px; background: linear-gradient(130deg, #E3F1E7, #F2F8EE); }
.ex-end h3 { display: flex; align-items: center; gap: 8px; margin: 0; font-size: 19px; color: #2F6B4A; }
.ex-end h3 svg { width: 22px; height: 22px; }
.ex-end p { margin: 6px 0 10px; color: var(--muted); }
.ee-acts { display: flex; flex-wrap: wrap; gap: 8px; }
@media (max-width: 360px) { .tm-card > .pom-mascot { --pom-size: 76px; } .tm-card h2 { font-size: 20px; } .today-head h1 { font-size: 22px; } }

.wl2 { max-width: 520px; margin: 8px auto; padding: 20px 18px; background: #fff; border-radius: 28px; border: 1px solid #E4ECE7; box-shadow: var(--sh3); text-align: center; }
.wl2-hero { border-radius: 24px; background: linear-gradient(120deg, #E5F1F8, #E6F3E8); padding: 10px 0 0; margin-bottom: 14px; }
.wl2-h { font-size: 24px; margin: 6px 0 2px; color: #294B58; }
.wl2-sub { color: var(--muted); margin: 4px 0 14px; }
.wl2-k { display: block; color: var(--muted); font-size: 13px; }
.wl2 .mc-q { display: flex; align-items: center; justify-content: center; gap: 10px; }
.wl2-lang { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 4px; margin: 6px 0 16px; border-radius: 26px; background: #EEF3F1; }
.wl2-lang .wl-lang { min-height: 44px; border: 0; border-radius: 22px; background: transparent; font: 800 17px Vaz, Tahoma, sans-serif; color: #42616B; box-shadow: none; }
.wl2-lang .wl-lang.on { background: #2F6B52; color: #fff; }
.wl2 .wl-go { border-radius: 26px; }
.wl2-link { display: block; margin: 12px auto 0; background: none; border: 0; color: #2F6B52; font: 700 15px Vaz, Tahoma, sans-serif; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; padding: 6px; }
.wl2-acc { margin-top: 16px; padding-top: 12px; border-top: 1px solid #E8EEEA; display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 14px; }
.wl2-acc small { flex-basis: 100%; color: var(--muted); }
.wl2-moods { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; margin: 14px 0 4px; }
.wl2-moods .face-btn { padding: 6px 2px; border-radius: 16px; }
.wl2-moods .face-btn span { display: block; font-size: 13px; }
.wl2-moods .face-btn.on { background: #E3F1E7 !important; box-shadow: 0 0 0 2px #87B39C !important; }
.wl2-note { margin: 10px 0 0; color: var(--muted); font-size: 13px; }
.wl2 .wl-who { justify-content: center; margin: 14px 0; }
.ask-card { margin-top: 14px; padding: 16px; border-radius: 24px; background: #FBF8EF; border: 1px solid #EEE3C6; }
.ask-card h3 { margin: 0 0 8px; font-size: 17px; }
.ask-avs { margin-top: 10px; }
.ask-acts { display: flex; gap: 8px; margin-top: 12px; flex-wrap: wrap; }
.ga-more { margin-top: 10px; }
.ga-more > summary { cursor: pointer; padding: 10px 14px; border-radius: 16px; background: #EEF4F0; color: #2F6B52; font-weight: 800; list-style: none; }
.ga-more > summary::-webkit-details-marker { display: none; }
.ga-more[open] > summary { margin-bottom: 10px; }
.gd-links { display: grid; gap: 0; }
@media (max-width: 600px) { .gf-scene .gf-gr, .gf-scene .gf-n { display: none; } .gf-scene .gf-pill { min-width: 34px; justify-content: center; } }
.wl2 .wl-go { background: #2F6B52 !important; color: #fff !important; border-color: #2F6B52 !important; }
.wl2 .wl-go:disabled { background: #B9CFC3 !important; border-color: #B9CFC3 !important; opacity: 1; }

@media (min-width: 601px) { .gf:not(.gf-mini) .gf-mind, .gf:not(.gf-mini) .gf-sleep { --y: 84%; } }

.tm-card { align-items: center; padding: 14px 14px 12px; gap: 8px; }
.tm-card > .pom-mascot { --pom-size: 72px; align-self: flex-end; margin: 0; }
.tm-links { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 16px; margin-top: 2px; }
.tm-links .tm-other { flex-basis: auto; margin: 0; padding: 4px 0; }
.tm-links .tm-why p { flex-basis: 100%; }
.tm-links .tm-why[open] { flex-basis: 100%; }
.tm-go { margin-top: 4px; min-height: 46px; }
.ask-card { padding: 12px 14px; }
.ask-card h3 { font-size: 15.5px; margin-bottom: 6px; }
.ask-card .form-control { height: 42px; }
.ask-card .ask-avs { display: flex; gap: 6px; overflow-x: auto; padding: 2px 0 4px; margin-top: 8px; scrollbar-width: none; grid-template-columns: none; }
.ask-card .ask-avs::-webkit-scrollbar { display: none; }
.ask-card .ask-avs .wl-av { flex: none; width: 62px; min-height: 0; padding: 4px 2px; border-radius: 14px; }
.ask-card .ask-avs .wl-av img { max-width: 44px; margin-bottom: 2px; }
.ask-card .ask-avs .wl-av span { font-size: 13px; }
.ask-card .wl-goals { gap: 6px; }
.ask-card .ask-acts { margin-top: 8px; }
.ask-card .ask-acts .btn { min-height: 38px; padding: 0 16px; }
@media (max-width: 360px) { .tm-card > .pom-mascot { --pom-size: 60px; } }
.ask-card .wl-goals { display: flex; flex-wrap: wrap; }
.ask-card .wl-g { min-height: 0; padding: 6px 10px; font-size: 13px; border-radius: 16px; display: inline-flex; align-items: center; gap: 4px; }
.ask-card .wl-g i { font-size: 15px; font-style: normal; }
.tm-card.tm-done { background: linear-gradient(130deg, #E3F1E7, #F2F8EE); }
.tm-done h2 { display: flex; align-items: center; gap: 6px; }
.tm-done h2 svg { width: 22px; height: 22px; color: #2F6B4A; }
.mood-card.tm-step { margin-top: 4px; }

.tb-row, .search { max-width: 868px; }
.tabbar { left: max(16px, env(safe-area-inset-left)); right: max(16px, env(safe-area-inset-right)); max-width: 868px; }
@media (max-width: 360px) { .tabbar { left: 16px; right: 16px; } }
@media (min-width: 700px) {
  .tab { flex-direction: row; justify-content: center; gap: 8px; padding: 11px 8px; font-size: 14.5px; }
  .tab svg { width: 24px; height: 24px; }
}
.mood-card, .wl-card { margin-left: 0; margin-right: 0; }
.account-page, .interests-card { max-width: none; margin: 18px 0; }
.wl2 { max-width: none; }
.wl2 > * { max-width: 620px; margin-inline: auto; }
.pl-name, .pl-lobby, .pl-end { max-width: none; }
@media (min-width: 760px) {
  .account-page, .interests-card { display: grid; grid-template-columns: 210px minmax(0, 1fr); column-gap: 28px; row-gap: 0; align-items: start; padding: 26px 30px; }
  .account-page > *, .interests-card > * { grid-column: 2; }
  .account-page > .account-art, .interests-card > .account-art { grid-column: 1; grid-row: 1 / span 12; align-self: center; }
  .account-actions { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
  .interests-card .wl-goals { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 760px) {
  .garden-mini.gm2.tm-garden { display: grid; padding: 12px 12px 12px 22px; grid-template-columns: minmax(0, 560px) minmax(0, 1fr); grid-template-rows: 1fr auto 1fr; column-gap: 24px; row-gap: 6px; }
  .tm-garden > .gf-mini { grid-column: 1; grid-row: 1 / span 3; max-width: none; align-self: center; }
  .tm-garden > .gm-t { grid-column: 2; grid-row: 2; }
  .tm-garden > .tm-gl { grid-column: 2; grid-row: 3; align-self: start; }
  .tm-garden > .gm-t b { font-size: 20px; }
  .tm-garden > .gm-t small { font-size: 14px; }
}
@media (min-width: 760px) {
  .mood-card.tm-step { padding-top: 12px; }
  .mood-card.tm-step > .pom-mascot { position: absolute; top: 8px; inset-inline-start: 14px; margin: 0; }
  .mood-card.tm-step .mc-q { min-height: 66px; margin-bottom: 6px; }
}

.bk-pw { display: grid; gap: 8px; margin: 10px 0 4px; }
@media (min-width: 560px) { .bk-pw { grid-template-columns: 1fr 1fr; } }
.bk-unlock { display: grid; gap: 8px; margin-top: 12px; padding: 12px; border-radius: 12px; background: #FFF8E6; }
.bk-unlock[hidden] { display: none; }
.bk-unlock label { font-weight: 700; }
.fb-set { border: 0; padding: 0; margin: 0 0 14px; }
.fb-set legend, .fb-lab { font-weight: 700; margin-bottom: 6px; display: block; }
.fb-opts { display: flex; flex-wrap: wrap; gap: 6px; }
.fb-opts .inputGroup { margin: 0; }
.fb-opts .inputGroup label { padding: 8px 12px; }
.fb-tip { margin: 0 0 12px; }
.fb-tip a { color: #fff; font-weight: 700; text-decoration: underline; }
.sus-card summary { cursor: pointer; display: flex; flex-direction: column; gap: 2px; }
.sus-card summary small { color: var(--muted); }
.sus-card .qn-item { border: 0; padding: 0; margin: 14px 0; }
.sus-q { font-weight: 700; line-height: 1.8; padding: 0; }
.vb-trans { background: #F4F6F8; }
.vb-trans p { margin: 4px 0 0; font-size: 14px; line-height: 1.9; }
.vbadge { display: inline-block; margin-right: 6px; padding: 0 8px; border-radius: 9px; background: #E3F3EA; color: #1F6B45; font-size: 12.5px; font-weight: 700; line-height: 1.8; }
.stp-sci { margin-top: 12px; text-align: right; }
.stp-sci summary { cursor: pointer; color: var(--primary-2); font-weight: 700; font-size: 14px; }
.exp-card { margin-top: 14px; }
.exp-card h3 { margin-top: 0; }
html.hc { --bg: #FFFFFF; --surface: #FFFFFF; --surface-2: #FFFFFF; --ink: #000000; --muted: #2B2B2B; --line: #4A4A4A; --primary: #0B4F7C; --primary-2: #083B5D; }
html.hc body { color: #000; }
html.hc .card, html.hc .q-row, html.hc .ex-row, html.hc .mi, html.hc .session, html.hc .task { box-shadow: none; border: 2px solid #3A3A3A; }
html.hc .btn { border: 2px solid #000; }
html.hc .btn-success { background: #0B5A33; color: #fff; }
html.hc .muted, html.hc small, html.hc .note, html.hc .page-sub { color: #222 !important; }
html.hc a { text-decoration: underline; }
html.hc a.card, html.hc a.btn, html.hc .tabbar a, html.hc a.mi, html.hc a.q-row, html.hc a.ex-row { text-decoration: none; }
html.hc .inputGroup label { border-color: #3A3A3A; }
html.hc :focus-visible { outline: 3px solid #000; outline-offset: 2px; }
@media print {
  .topbar, .tabbar, .clinic-bar, .foot-tag, .crumb, .rp-actions, .rp-name, #rp-qrbox, .qn-actions, .exp-card, .toast, .nav-guide, .tb-sos { display: none !important; }
  html, body { background: #fff !important; }
  .card { box-shadow: none !important; border: 1px solid #bbb; break-inside: avoid; }
  details.rp-text > summary { display: none; }
  .report-box { white-space: pre-wrap; }
}

.mc-grid span { color: #5E6B75; }
.b-unknown .ga-num { color: #5E6B75; }
.wk-d.up { color: #1F7A45; } .wk-d.dn { color: #A84E12; }
.rp-actions .btn-wa { background: #157A3E; border-color: #157A3E; }
.topbar .brand { min-height: 32px; align-items: center; }
.gf-name { display: inline-block; padding: 4px 0; min-width: 24px; }
.ga-step { display: inline-block; min-height: 26px; padding: 2px 0; }
.gf-pill { min-width: 26px; justify-content: center; }
.stp-full { min-height: 28px; padding: 3px 0; }
.page-account a:not(.btn):not(.card) { display: inline-block; padding: 3px 0; }

.lang-menu { position: absolute; z-index: 1000; min-width: 150px; background: #fff; border-radius: 14px; box-shadow: 0 12px 30px rgba(16,24,40,.18); padding: 6px; display: flex; flex-direction: column; }
.lang-menu button { border: 0; background: transparent; text-align: start; padding: 10px 14px; border-radius: 10px; font: 700 16px Vaz, Tahoma, sans-serif; color: var(--ink); cursor: pointer; min-height: 44px; }
.lang-menu button:hover, .lang-menu button:focus-visible { background: #EEF3F1; }
.lang-menu button[aria-checked="true"] { color: #1F6B45; }
.wl2-lang { grid-template-columns: 1fr 1fr 1fr; }

.svc-card h3 { font-size: 1.05rem; margin: 0 0 8px; }
.svc-card p { line-height: 1.9; margin: 0 0 8px; }
.svc-card p:last-child { margin-bottom: 0; }
.svc-list { margin: 0 0 10px; padding-inline-start: 1.4em; line-height: 1.9; }
.svc-ver { margin: 14px 0 4px; }
.svc-ver:first-child { margin-top: 0; }
.svc-ver small { color: var(--muted); font-weight: 400; margin-inline-start: 6px; }
.svc-link { margin: -4px 0 10px; line-height: 1.7; }
.svc-link { font-size: .92rem; }
.svc-link a { font-weight: 500; }
.svc-scroll { overflow-x: auto; margin: 0 0 10px; }
.svc-table { width: 100%; border-collapse: collapse; font-size: .95rem; }
.svc-table th, .svc-table td { text-align: start; vertical-align: top; padding: 8px 6px; border-bottom: 1px solid var(--line, rgba(0,0,0,.1)); }
.svc-table th { font-weight: 700; }
.svc-table td:last-child { white-space: normal; min-width: 8em; }

.account-2fa { margin-top: 22px; border-top: 1px solid #EDE3E5; padding-top: 14px; }
.account-2fa summary { cursor: pointer; font-weight: 700; font-size: 14px; display: flex; align-items: center; gap: 8px; }
.account-2fa .tag { font-size: 13px; font-weight: 700; padding: 1px 8px; border-radius: 999px; background: #EEE; color: #555; }
.account-2fa .tag.ok { background: #E5F4E4; color: #24663A; }
.account-2fa .account-form, .account-2fa #account-2fa-box { margin-top: 10px; }
.account-steps { margin: 8px 0; padding-inline-start: 1.4em; line-height: 1.9; }
.account-qr { max-width: 220px; margin: 8px auto; background: #fff; padding: 6px; border-radius: 10px; }
.account-qr svg { width: 100%; height: auto; display: block; }
.totp-secret { font-size: 13px; word-break: break-all; user-select: all; }
.account-note { background: #FFF6E5; border-radius: 10px; padding: 8px 12px; }
.sus-prompt { margin-top: 12px; display: flex; gap: 10px; border-inline-start: 4px solid #2F8E6A; }

.kid-gate h2 { font-size: 19px; margin: 0 0 6px; }
.kid-gate .kg-btns { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; align-items: center; }
.kid-gate .btn-link { background: none; border: 0; color: var(--pri, #2C6E9B); text-decoration: underline; padding: 8px 4px; font: inherit; cursor: pointer; }
.kid-line { margin: 4px 0 8px; }

.today-intro { margin: 4px 0 0; color: var(--muted, #5D6B76); font-size: 15px; line-height: 1.8; }
.need-box { display: flex; flex-direction: column; gap: 4px; margin-bottom: 12px; }
.need-box > small { color: var(--muted, #5D6B76); }
.need-box .need-chips { margin-top: 6px; }
.need-box .chip i { font-style: normal; margin-inline-end: 4px; }
.wl2-need { text-align: start; margin: 14px 0 6px; }
.ci-chosen { margin: 10px 0 0; font-weight: 700; text-align: center; }
.ci-chosen small { font-weight: 400; color: var(--muted, #5D6B76); }
.ci-opt { text-align: center; }
.ci-more { margin-top: 12px; }
.ci-more > summary { cursor: pointer; font-weight: 700; padding: 4px 0; }
.ci-more[open] > summary { margin-bottom: 10px; }
.ci-next { margin-top: 12px; }
.task.now { box-shadow: inset 0 0 0 2px var(--c, #2C6E9B); }
.prog-next { margin-top: 12px; }

.pl-ctl { align-items: flex-start; gap: 16px; }
.pl-b, .pl-main { width: auto; height: auto; background: none; border-radius: 12px; box-shadow: none; display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 2px; }
.pl-b i { display: grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: rgba(255,255,255,.16); font-style: normal; font-size: 18px; }
.pl-b.on i { background: #FFD36B; color: #2B2D6E; }
.pl-b.on { background: none; color: #fff; }
.pl-main i { width: 78px; height: 78px; font-size: 26px; background: #fff; color: #2B2D6E; box-shadow: 0 10px 30px rgba(0,0,0,.3); }
.pl-b small { font-size: 13px; color: #fff; max-width: 100px; text-align: center; line-height: 1.4; unicode-bidi: plaintext; }
.pl-st { margin: 10px 0 0; font-size: 13.5px; opacity: .9; }
.game-count { font-size: 56px; font-weight: 800; text-align: center; padding: 18px 0; color: var(--c, #2C6E9B); }
.game-pr-note { text-align: center; margin: 8px 0 0; }
.game-pr-tag { text-align: center; font-weight: 700; color: #8C6400; margin: 0 0 6px; }
.say.on { outline: 2px solid currentColor; outline-offset: 2px; }
.ex-hint { color: var(--muted, #5D6B76); font-size: 14px; margin: 0 0 8px; }
.ex-fhint { display: block; color: var(--muted, #5D6B76); font-size: 13px; margin-top: 4px; }
.ex-ferr { display: block; color: #B3261E; font-weight: 700; font-size: 13.5px; margin-top: 4px; }
.ex-ferr:empty { display: none; }
.ex-danger { margin-top: 18px; opacity: .85; }
.ev-what { margin: -4px 0 10px; font-size: 13.5px; color: var(--muted, #5D6B76); }
.ev-what summary { cursor: pointer; }
.persona-note { font-size: 13.5px; }
.res-limit { margin-top: 6px; }
.tl-what { margin: 8px 0 12px; font-size: 14.5px; }
.tl-what summary { cursor: pointer; font-weight: 700; color: var(--pri, #2C6E9B); }
.tl-what ul { margin: 8px 0 0; padding-inline-start: 20px; line-height: 1.9; }
.r-meta { display: block; font-size: 13px; color: var(--muted, #5D6B76); }
.srch-int { font-weight: 700; margin: 4px 0 8px; }
.srch-more { margin: 8px 0 12px; }
.srch-more > summary { cursor: pointer; font-weight: 700; padding: 6px 0; }
.cs-step { font-size: 16px; margin: 14px 0 8px; }
.cs-more { margin: 10px 0; }
.cs-more > summary { cursor: pointer; font-weight: 700; padding: 6px 0; }
.prof-note p { margin: 0 0 6px; font-size: 14.5px; }
.pro-sec > summary { cursor: pointer; font-weight: 700; }
.gd-more { margin: 14px 0; }
.gd-more > summary { cursor: pointer; font-weight: 700; font-size: 16px; padding: 8px 0; }
.rp-h { font-size: 16px; margin: 12px 0 6px; }
.rp-how { margin: 6px 0 10px; }
.rp-more { margin-top: 12px; }
.rp-more > summary { cursor: pointer; font-weight: 700; }
.oc-net { display: block; font-size: 13px; color: var(--muted, #5D6B76); margin-top: 2px; }
.oc-soon { opacity: .75; cursor: default; }
.oc-soon .tag { background: #FFF4D6; color: #6B4E00; border-radius: 99px; padding: 2px 10px; font-size: 13px; font-weight: 700; white-space: nowrap; }

.res-risk { border-inline-start: 5px solid #B3261E; }
.res-risk .res-word { color: #8E1F17; font-size: 24px; }
.res-score { margin-top: 12px; } .res-score > summary { cursor: pointer; font-weight: 700; }
.sw-gate .sw-q { margin: 12px 0; } .sw-out { margin-top: 12px; }
.ur-safe { margin-top: 12px; display: flex; flex-direction: column; gap: 6px; }
.ur-unsafe { margin-top: 8px; background: #FFF4D6; }
.res-help { margin: 12px 0 6px; }
.ci-three { margin-top: 12px; }
.kid-warn { color: #8E1F17; }
.kid-gate .btn[disabled] { opacity: .7; }
.ex-stopmsg p { margin: 8px 0; font-weight: 700; }
.cs-nav { display: flex; gap: 8px; justify-content: space-between; margin-top: 12px; }
.cs-sum { font-weight: 700; margin: 6px 0; }
.chk-why { margin: 6px 0 12px; }
.vbadge.vb-part { background: #FFF4DE; color: #7A5200; }
.validation-box.vb-part h4 { color: #7A5200; }
.tm-hard { flex-basis: 100%; display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.tm-hard .btn { flex: 1 1 140px; }
.srch-risk { background: #FCEDEA; border: 1px solid #F1C4BC; }
.srch-risk h2 { font-size: 18px; margin: 0 0 6px; color: #8E2B20; }
.srch-risk .btn-block { margin-top: 10px; }
.res-more { display: grid; gap: 8px; margin: 12px 0; }
.res-sos { margin: 6px 0 12px; text-align: center; }
.res-sos a { color: #B0352A; font-weight: 700; }
.tm-reason { margin: 2px 0 6px; font-size: 14px; color: #2E6B4F; font-weight: 700; }
.wl2-lang-top { margin: 0 0 14px; }
.wl2-hint { text-align: center; color: #56646F; font-size: 13.5px; margin: 6px 0 0; }
.wl2-h2 { font-size: 18px; margin: 14px 0 8px; }
.tb-prof { flex-direction: column; gap: 0; }
.tb-prof .tb-me { font-size: 12.5px; font-weight: 700; color: #4B6478; line-height: 1.1; margin-top: 1px; }
.res-redo { text-align: center; margin: 4px 0 14px; font-size: 13.5px; }
.res-redo a { color: #4B6478; }
.res-box.res-compact { padding: 8px 12px; }
.res-box.res-compact .res-row b { font-weight: 600; font-size: 13.5px; }
.res-box.res-compact .res-more summary { font-size: 13px; }
.stp-intro .stp-start { background: #2E7D57 !important; color: #fff !important; border-color: #2E7D57 !important; }
.tb-srch svg { width: 20px; height: 20px; }
.wl2-acc { display: flex; justify-content: center; align-items: center; gap: 14px; }
.wl2-zoom { border: 1px solid #C9D6DD; background: #fff; border-radius: 10px; padding: 2px 10px; font-weight: 800; font-size: 16px; color: #1E557C; min-height: 36px; }
.wl2-lang.wl2-lang-top { width: 100%; max-width: 520px; margin: 0 auto 14px; }
.wl-opt { font-weight: 400; color: #56646F; font-size: .85em; }
.wl2-need { text-align: center; max-width: 560px; margin-inline: auto; }
.wl2-need .need-chips { justify-content: center; }
.wl2 .wl-go, .wl2 .wl2-hint, .wl2 .wl2-link { max-width: 560px; margin-inline: auto; display: block; }
.wl2-acc { flex-wrap: wrap; }
.wl2 .wl-age, .wl2 .wl-prob, .wl2 .wl-who { justify-content: center; }
.wl2 .wl2-acc { width: 100%; max-width: 560px; margin: 18px auto 0; padding-top: 14px; justify-content: center; align-items: center; gap: 16px; }
.wl2 .wl2-acc .wl-account-link { line-height: 36px; }
html.no-say .say { display: none !important; }
body.is-wl #tb-prof, body.is-wl #searchBtn, body.is-wl #langBtn, body.is-wl #sform { display: none !important; }
.wl2 .wl2-acc .wl-account-link { font-size: 16px; color: #1E557C; }
.wl2-zoom b { font-size: 19px; }
.sos-cs { margin: 6px 0 0; }
.ex-row { --c: #D5E0E6; }
.hub-row .r-title svg { width: 20px; height: 20px; vertical-align: -4px; color: #2F6B52; margin-inline-end: 4px; }
.hub-more summary { cursor: pointer; font-weight: 700; color: #1E557C; padding: 12px 4px; }
.tm-chg { border: 0; background: none; color: #1E557C; text-decoration: underline; font: inherit; font-weight: 600; padding: 0 4px; cursor: pointer; }
.ci-care { margin: 8px 0 0; font-size: 15px; color: #2E6B4F; font-weight: 600; }
.tm-garden.gm-small .gf { display: none; }
.tm-garden.gm-small .gm-t::before { content: '🌱 '; }
.tm-garden.gm-small { padding-block: 6px; }
.face-btn[data-mood="0"], .face-btn[data-wm="0"], .face-btn[data-postm="0"] { background: #F7E1DD; }
.face-btn[data-mood="1"], .face-btn[data-wm="1"], .face-btn[data-postm="1"] { background: #FBEBDD; }
.face-btn[data-mood="2"], .face-btn[data-wm="2"], .face-btn[data-postm="2"] { background: #F2F1E6; }
.face-btn[data-mood="3"], .face-btn[data-wm="3"], .face-btn[data-postm="3"] { background: #E5F1E2; }
.face-btn[data-mood="4"], .face-btn[data-wm="4"], .face-btn[data-postm="4"] { background: #D9EFDF; }
.faces-row button[data-m="0"] { background: #F7E1DD; } .faces-row button[data-m="1"] { background: #FBEBDD; } .faces-row button[data-m="2"] { background: #F2F1E6; } .faces-row button[data-m="3"] { background: #E5F1E2; } .faces-row button[data-m="4"] { background: #D9EFDF; }
.face-btn.on { outline: 3px solid #2F6B52; outline-offset: 1px; }

:root { --bg: #F6F8F7; --muted: #4B5B66; --mod: #C77700; }
body { background: var(--bg); }
.tile { --c: #2C6E9B !important; }
.tile::after { display: none; }
#page .r-sub, #page .t-sub, #page .t-count, #page small, #page .disclaimer, #page p.foot, #page .ga-band, #page .ga-why, #page .ga-step,
#page .stp-full, #page .ex-dur, #page .gf-pill, #page .pl-note, #page .me-week span, #page .stat span, #page summary, #page .ex-ev1,
#page .vbadge, #page .btn-xs, #page .checks-note, #page .wl-k, #page .note { font-size: 14px; }
#page .source, #page .v-ref, #page .ex-source, #page .ex-source + p { font-size: 13px; }
.v-ref, .ex-source span { font-family: Vaz, Tahoma, sans-serif; }
#page .gf-name, #page .gd-area { font-size: 13px; }
@media (max-width: 360px) { .tab { font-size: 13px; } }
.gd-stats span svg, .gd-wet svg { width: 16px; height: 16px; vertical-align: -3px; }
.gd-stats span { font-size: 14px; }
.mood-row .face-btn span, .face-row .face-btn span, .face-btn span { font-size: 13px; }
.ab-p svg, .svc-card h3 svg, .stat b svg { width: 20px; height: 20px; vertical-align: -4px; color: #2C6E9B; flex: none; }
.stat b svg { width: 26px; height: 26px; color: #2F6B52; }
.check-card { --c: #2C6E9B !important; }
.chip.act i { font-style: normal; display: inline-flex; margin-inline-end: 6px; color: #2C6E9B; }
.chip.act i svg, .cr-l svg { width: 18px; height: 18px; vertical-align: -4px; color: #2C6E9B; }
.chip.act.on i { color: inherit; }
.ex-privacy::before { content: ""; display: inline-block; width: 16px; height: 16px; margin-inline-end: 6px; vertical-align: -3px; 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'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%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'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") center / contain no-repeat; }
.wl2-note svg, .hc-icon svg, .lrn-play svg { width: 18px; height: 18px; vertical-align: -4px; }
.pl-b i svg { width: 26px; height: 26px; }
.pb-ic svg, .pl-gi svg, .kin-li svg { width: 30px; height: 30px; color: #2C6E9B; }
.page-title .pl-svg, .qz-h .pl-svg { width: 24px; height: 24px; vertical-align: -4px; color: #2C6E9B; }
.gw-ic { width: 20px; height: 20px; vertical-align: -4px; }
.gw-big .gw-ic { width: 34px; height: 34px; }
.badge i svg { width: 18px; height: 18px; vertical-align: -4px; }
.gd-stage svg, .btn svg.ic { width: 20px; height: 20px; vertical-align: -4px; }
.mr-play svg { width: 22px; height: 22px; }

.tpath { margin: 12px 0 14px; padding: 12px 14px 10px; border-radius: 20px; background: #fff; box-shadow: var(--sh3, 0 2px 10px rgba(16,24,40,.06)); }
.tp-top { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.tp-top h2 { margin: 0; font-size: 16px; color: #1D2830; }
.tp-top small { color: var(--muted); font-size: 14px; }
.tp-row { list-style: none; margin: 10px 0 4px; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); position: relative; }
.tp-row::before { content: ""; position: absolute; top: 19px; inset-inline: 16.6%; height: 3px; border-radius: 3px; background: #E3EAE6; }
.tp-s { position: relative; display: flex; flex-direction: column; align-items: center; gap: 4px; text-align: center; }
.tp-dot { width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: #fff; border: 3px solid #D5DFDA; color: #6B7A84; font-weight: 800; font-size: 16px; position: relative; }
.tp-dot svg { width: 22px; height: 22px; stroke-width: 2.6; }
.tp-s.ok .tp-dot { background: #2F6B52; border-color: #2F6B52; color: #fff; }
.tp-s.cur .tp-dot { border-color: #2C6E9B; color: #2C6E9B; box-shadow: 0 0 0 4px rgba(44,110,155,.15); }
.tp-l { font-size: 14px; line-height: 1.4; color: #33424D; font-weight: 600; }
.tp-s.cur .tp-l { color: #1D2830; }
.tp-note { margin: 6px 0 0; font-size: 14px; color: var(--muted); text-align: center; }
.tp-all .tp-note { color: #2F6B52; font-weight: 700; }
.tp-after { margin: 0 0 6px; text-align: center; font-size: 14px; }
.tp-post .ee-mline { text-align: center; font-weight: 700; color: #2F6B52; min-height: 1.4em; margin: 6px 0 0; }
.tp-skip { display: block; margin: 4px auto 0; }
.tip-nob .tip-copy { padding-inline-start: 0; }
.sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.bb-tour { position: fixed; inset: 0; z-index: 10050; }
.bt-ring { position: fixed; border-radius: 18px; box-shadow: 0 0 0 4px #F4C24A, 0 0 0 9999px rgba(20, 30, 36, .55); pointer-events: none; transition: all .25s; }
.bt-card { position: fixed; inset-inline: 16px; max-width: 420px; margin-inline: auto; background: #fff; border-radius: 22px; padding: 14px 16px 12px; box-shadow: 0 12px 34px rgba(0,0,0,.22); display: grid; grid-template-columns: auto 1fr; gap: 6px 12px; align-items: center; }
.bt-body p { margin: 0 0 6px; font-size: 17px; line-height: 1.7; font-weight: 600; color: #1D2830; }
.bt-foot { grid-column: 1 / -1; display: flex; align-items: center; gap: 10px; }
.bt-foot small { color: var(--muted); font-size: 14px; margin-inline-end: auto; }
.bt-skip { border: 0; background: none; color: #4B5B66; font: inherit; font-size: 15px; text-decoration: underline; min-height: 44px; padding: 0 8px; cursor: pointer; }
.bt-next { min-width: 110px; min-height: 46px; }
@media (prefers-reduced-motion: reduce) { .bt-ring { transition: none; } }
.gd-today { margin: 12px 0; }
.gd-today h2 { font-size: 17px; margin: 0 0 4px; display: flex; align-items: center; gap: 6px; }
.gd-today h2 svg { width: 22px; height: 22px; color: #2F6B52; }
.gd-today .tpath { box-shadow: none; padding: 4px 0; margin: 0 0 8px; }
.gd-today .tp-top { display: none; }
.gt-t { margin: 4px 0 10px; } .gt-t b { display: block; font-size: 16px; } .gt-t small { display: block; color: var(--muted); font-size: 14px; }
.gd-key { margin: 0 2px 12px; }
.bt-prev { min-height: 46px; padding: 0 14px; }
.bt-foot { flex-wrap: wrap; }

.tm-alts { margin-top: 10px; }
.tm-alts > summary { list-style: none; cursor: pointer; display: inline-block; }
.tm-alts > summary::-webkit-details-marker { display: none; }
.tm-alist { display: grid; gap: 8px; margin-top: 8px; text-align: start; }
.tm-alt { display: block; padding: 10px 12px; border-radius: 14px; background: #fff; border: 1px solid #DCE6E1; text-decoration: none; color: #1D2830; }
.tm-alt b { display: block; font-size: 15px; } .tm-alt small { display: block; color: var(--muted); font-size: 14px; line-height: 1.5; }
.tm-skip { border: 0; background: none; color: #4B5B66; text-decoration: underline; font: inherit; font-size: 14px; min-height: 40px; cursor: pointer; justify-self: center; }
.ee-fb { margin: 10px 0 6px; }
.ee-fb > b { font-size: 16px; }
.fb-opts { display: grid; grid-template-columns: repeat(2, 1fr); gap: 8px; margin-top: 8px; }
.fb-opts .btn { min-height: 46px; font-size: 15px; background: #fff; border: 1px solid #D5DFDA; }
.fb-opts .btn.on { background: #E3F1E7; border-color: #2F6B52; color: #1D2830; font-weight: 700; }
.fb-opts .btn:disabled:not(.on) { opacity: .55; }
.ee-fb .ee-mline { margin: 8px 0 0; font-weight: 700; color: #2F6B52; min-height: 1.4em; }
.fb-help { margin-top: 8px; }
.tp-post .ee-fb { margin-top: 4px; }
.clar-card { margin: 12px 0; background: #FFF9F2; border: 1px solid #F1DFC6; }
.clar-card h3 { font-size: 17px; margin-bottom: 4px; }
.clar-card p { font-size: 15px; }
.clar-opts { display: flex; flex-wrap: wrap; gap: 8px; }
.clar-opts .btn { min-height: 44px; background: #fff; border: 1px solid #E3D3BE; }
.clar-opts .btn.on { background: #FCEBD4; border-color: #C77700; font-weight: 700; }
.clar-msg { margin: 8px 0 0; font-weight: 700; color: #6B4A12; min-height: 1.2em; }
.tm-card .clar-card { position: relative; z-index: 1; }
.sum-card h3 { font-size: 17px; }
.sum-seg { display: flex; gap: 6px; margin: 6px 0 10px; }
.sum-seg button { flex: 1; min-height: 40px; border-radius: 12px; border: 1px solid #D5DFDA; background: #fff; font: inherit; font-size: 14px; cursor: pointer; }
.sum-seg button.on { background: #2F6B52; color: #fff; border-color: #2F6B52; font-weight: 700; }
.sum-list { margin: 0 0 8px; padding-inline-start: 18px; font-size: 15px; line-height: 1.8; }
.tm-cap { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 10px; justify-content: center; }
.tm-cap small { color: var(--muted); font-size: 14px; }
.tm-cap .chip { min-height: 38px; font-size: 14px; }
.tm-cap .chip.on { background: #2F6B52; color: #fff; border-color: #2F6B52; }
.tm-capmiss { flex-basis: 100%; text-align: center; }
.tm-whyd { margin-top: 8px; text-align: start; font-size: 14px; }
.tm-whyd > summary { cursor: pointer; color: #2C6E9B; text-decoration: underline; list-style: none; text-align: center; }
.tm-whyd > summary::-webkit-details-marker { display: none; }
.tm-whyd ul { margin: 6px 0 4px; padding-inline-start: 18px; line-height: 1.8; }
.tm-whyd .tm-wl { margin: 8px 0 0; font-weight: 700; font-size: 13px; }
.tm-whyd .tm-wl + ul { margin-top: 2px; }
.tm-off { margin: 0; font-size: 14px; color: #4B5B66; flex-basis: 100%; }
.tm-card .pom-mascot { pointer-events: none; }
.tm-alts, .tm-cap, .tm-whyd { position: relative; z-index: 2; }
.tm-whyw, .tm-card > .clar-card { flex-basis: 100%; }
.tm-in .tm-cap { justify-content: flex-start; }
.tm-in .tm-whyd > summary { text-align: start; }
.tm-card .tm-in { width: auto; height: auto; justify-content: flex-start; }
.tm-in .tm-alist { text-align: start; }
.mirror-line svg { width: 18px; height: 18px; vertical-align: -4px; color: #2F6B52; }

html[lang="en"] .mood-row .face-btn span, html[lang="en"] .face-row .face-btn span, html[lang="en"] .wl2-moods .face-btn span { white-space: normal; overflow: visible; text-overflow: clip; font-size: 13px; line-height: 1.2; }
.gd-name span svg { width: 16px; height: 16px; vertical-align: middle; }
.rp-risk { background: #FDECEA; border: 1px solid #F2B8B5; color: #8C1D18; }
.rp-risk-line { margin: -2px 0 8px; padding: 6px 10px; border-radius: 10px; background: #FDECEA; color: #8C1D18; font-size: 13px; font-weight: 700; }
.age-gate h2 { color: #8C1D18; }

.tm-card { --tm-ms: 72px; }
.tm-card > .pom-mascot { --pom-size: var(--tm-ms) !important; }
.tm-card .tm-in > .tm-go { align-self: center; margin-inline: auto; }
@media (max-width: 480px) { .tm-card { --tm-ms: 56px; } .tm-card h2 { font-size: 20px; } }
@media (max-width: 360px) { .tm-card { --tm-ms: 48px; } .tm-card h2 { font-size: 18px; } }
.wl2-note { margin: 14px auto 0; max-width: 420px; font-size: 13px; line-height: 1.7; color: #5B6F75; text-align: center; }
.wl2-note a { color: #2F6B8A; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.call-card .call-h { display: flex; align-items: center; gap: 8px; font-size: 17px; }
.call-card .call-h svg, .call-card .btn svg { width: 20px; height: 20px; flex: none; }
.call-card .btn { display: flex; align-items: center; justify-content: center; gap: 8px; }
.call-card p { margin: 6px 0 10px; }
.call-bk { font-weight: 600; color: var(--garden, var(--ok)); }
.call-off { font-size: 14px; color: var(--muted); }
.call-note { display: block; margin-top: 8px; font-size: 13px; line-height: 1.6; }
.call-ov { position: fixed; inset: 0; z-index: 1000; background: rgba(15, 25, 30, .55); display: flex; align-items: flex-end; justify-content: center; padding: 16px 16px max(16px, env(safe-area-inset-bottom)); }
@media (min-height: 560px) { .call-ov { align-items: center; } }
.call-sheet { width: min(420px, 100%); max-height: 100%; overflow-y: auto; background: var(--surface, #fff); color: var(--ink); border-radius: 24px; padding: 24px 20px 18px; text-align: center; box-shadow: 0 10px 40px rgba(0, 0, 0, .25); }
.call-av { width: 96px; height: 96px; margin: 0 auto 8px; display: grid; place-items: center; }
.call-av svg { max-width: 88px; max-height: 88px; }
.call-sheet h2 { margin: 4px 0; font-size: 20px; }
.call-who { margin: 0; font-weight: 600; min-height: 1.4em; }
.call-st { margin: 6px 0 0; color: var(--muted); min-height: 1.5em; }
.call-time { margin: 4px 0 0; font-size: 22px; font-variant-numeric: tabular-nums; letter-spacing: .04em; }
.call-btns { display: flex; justify-content: center; gap: 14px; margin: 18px 0 10px; }
.call-btns button { min-width: 110px; min-height: 48px; border-radius: 999px; border: 1px solid var(--line); background: var(--surface-2, #F7F9FB); color: var(--ink); font: inherit; font-weight: 600; padding: 10px 18px; cursor: pointer; }
.call-btns .call-endb { background: var(--high, #C8443C); border-color: var(--high, #C8443C); color: #fff; }
.call-btns .call-mute[aria-pressed="true"] { background: var(--ink); color: var(--surface, #fff); }
.call-keep, .call-safe { font-size: 13px; margin: 6px 0 0; line-height: 1.6; }
.call-btns .call-ans { background: #2F6B52; border-color: #2F6B52; color: #fff; display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.call-btns .call-ans svg { width: 18px; height: 18px; }
.call-ringing { animation: call-pulse 1.4s ease-in-out infinite; border-radius: 50%; }
@keyframes call-pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(47, 107, 82, .35); } 50% { box-shadow: 0 0 0 16px rgba(47, 107, 82, 0); } }
@media (prefers-reduced-motion: reduce) { .call-ringing { animation: none; } }
.call-card .call-h { position: relative; }
.call-info { margin-inline-start: auto; width: 44px; height: 44px; display: inline-grid; place-items: center; border: 0; border-radius: 50%; background: transparent; color: var(--muted, #56646F); cursor: pointer; padding: 0; }
.call-info svg { width: 22px; height: 22px; }
.call-info:hover, .call-info:focus-visible { background: var(--surface-2, #F1F5F7); color: var(--ink); }
.call-safe a { font-weight: 600; }
.sec-h h2 { font-size: 18px; font-weight: 900; margin: 0; line-height: 1.4; }

:root {
  --primary: #2F7A5F; --primary-2: #245F4A; --primary-tint: #E6F2EC;
  --heading: #356C8B; --icon-bg: #EEF3F1; --icon-fg: #356C8B;
  --ok: #237A47; --ok-bg: #E6F4EA; --mild: #8A6508; --mild-bg: #FFF4D6;
  --mod: #A35E00; --mod-bg: #FFEBD6; --high: #A33530; --high-bg: #FDEBEA;
  --c: var(--primary);
}
.tabbar .tab.on, .tabbar .tab[class*="t-"].on { --tc: var(--primary); background: var(--primary-tint); color: var(--primary); }
.mi-ic, .tl-ic, .hp-list .hp-art, .hp-yavar .hp-art, .hp-talk .hp-art { background: var(--icon-bg) !important; color: var(--icon-fg) !important; }
.hub-row .r-title svg { color: var(--icon-fg); }
.res-card.lv-ok { --lvc: var(--ok); } .res-card.lv-mild { --lvc: var(--mild); } .res-card.lv-mod { --lvc: var(--mod); } .res-card.lv-high { --lvc: #9A3F12; }

.me-head.me-line { background: var(--primary-tint); color: var(--ink); border: 1px solid #D5E8DE; box-shadow: none; padding: 12px 16px; border-radius: 20px; }
.me-line .me-info { flex: 1; min-width: 0; }
.me-line h1 { font-size: 22px; margin: 0; color: var(--ink); }
.me-line .me-wk { display: block; color: var(--muted); font-size: 14px; }
.me-gh { margin: 18px 2px 6px; }
.me-gh h2 { font-size: 15px; color: var(--muted); font-weight: 800; }
.me-more { margin-top: 14px; }
.me-more > summary { cursor: pointer; font-weight: 800; color: var(--primary); padding: 10px 2px; }
.me-more > .me-menu { margin-top: 6px; }
.hp-compact { padding: 12px 14px; }
.hp-compact .hp-ui { width: 40px; height: 40px; } .hp-compact .hp-ui svg { width: 24px; height: 24px; }
.hp-compact h2 { font-size: 19px; }
.hp-compact .call-list.compact { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 8px; margin-top: 10px; }
.hp-compact .call-list.compact .call-btn { margin: 0; padding: 9px 10px; min-height: 56px; }
.hp-compact .call-list.compact .call-btn > svg { width: 32px; height: 32px; padding: 7px; }
.hp-compact .hp-more { margin-top: 8px; }
.info-bg { align-items: end; padding: 12px 12px max(12px, env(safe-area-inset-bottom)); }
@media (min-width: 700px) { .info-bg { align-items: center; } }
.info-sheet { max-width: 520px; max-height: 88vh; overflow-y: auto; text-align: start; padding: 20px 18px 16px; }
.info-sheet h2 { font-size: 20px; margin: 0 0 10px; }
.info-sheet .is-body { font-size: 15px; line-height: 1.9; }
.info-sheet .is-body .disclaimer { margin-top: 0; }
.info-sheet .is-x { margin-top: 12px; }
.stp-th { display: flex; align-items: center; justify-content: center; gap: 6px; }
.stp-th h1 { margin: 0; }
.stp-info { flex: none; width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--line); background: #fff; color: var(--icon-fg); display: grid; place-items: center; cursor: pointer; padding: 0; }
.stp-info svg { width: 22px; height: 22px; }
.stp-dx { margin: 2px 0 10px; font-weight: 700; color: var(--ink); }
.gd-sheet { background: none; box-shadow: none; border: 0; padding: 0; }
.gd-sheet .gd-area { color: var(--muted); }
.gd-why { margin-top: 2px; }
.gd-links { margin: 12px 2px 4px; }
.gd-links a { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; font-weight: 800; text-decoration: none; }
.gd-links a svg { width: 20px; height: 20px; }
.sos-hero h1 { font-size: 1.5em; font-weight: 900; }
.mc-q h2 { font-size: 18px; margin: 0; }
.svc-card h2 { font-size: 1.05rem; margin: 0 0 8px; }
.svc-card h2 svg { width: 20px; height: 20px; vertical-align: -4px; color: #2C6E9B; flex: none; }
h2.svc-ver { font-size: 1.05rem; }
.safety-box h2 { font-size: 1em; font-weight: 900; margin: 0 0 .4em; }
.tabbar .tab.on, .tabbar .tab[class*="t-"].on { color: var(--primary-2); }
.modal-bg.info-bg { z-index: 10000; }
.modal-bg.gw-bg { z-index: 10001; }
.gd-steps > summary { cursor: pointer; font-weight: 700; color: var(--primary); padding: 10px 2px; }
.wl2-use label { cursor: pointer; } .wl2-use input { width: 20px; height: 20px; vertical-align: -4px; accent-color: var(--primary); }
html.hc .tabbar .tab.on, html.hc .tabbar .tab[class*="t-"].on { --tc: #fff; background: #000; color: #fff; }
.stp-qa { margin: 0 0 6px; color: var(--ok); font-weight: 800; font-size: 14px; }
.vb-qa > ul { padding-inline-start: 0; list-style: none; margin: 0; }
.vb-qa > ul > li { margin: 6px 0; }
.vb-qa .qa-refs { margin: 4px 0 6px; padding-inline-start: 18px; font-size: 13.5px; list-style: disc; overflow-wrap: anywhere; }

html:not(.hc) .btn-success, html:not(.hc) .btn-primary, html:not(.hc) .tm-go {
  background: #2F7A5F !important; border-color: #2F7A5F !important; color: #FFFFFF !important;
  box-shadow: 0 6px 16px rgba(47, 122, 95, .26) !important; font-weight: 800; letter-spacing: 0;
  transition: background-color .15s ease, box-shadow .15s ease, transform .1s ease;
}
html:not(.hc) .btn-success:hover, html:not(.hc) .btn-primary:hover, html:not(.hc) .tm-go:hover { background: #276B53 !important; border-color: #276B53 !important; }
html:not(.hc) .btn-success:active, html:not(.hc) .btn-primary:active, html:not(.hc) .tm-go:active { transform: translateY(1px); box-shadow: 0 3px 8px rgba(47, 122, 95, .22) !important; }
html:not(.hc) .btn-success:focus-visible, html:not(.hc) .btn-primary:focus-visible, html:not(.hc) .tm-go:focus-visible { outline: 3px solid #9CCFB6; outline-offset: 3px; }
html:not(.hc) .btn-success.btn-lg, html:not(.hc) .tm-go { border-radius: 999px; }
.tm-go svg, .btn-success.btn-lg > svg:first-child { width: 28px !important; height: 28px !important; padding: 6px; box-sizing: border-box; border-radius: 50%; background: rgba(255, 255, 255, .2); flex: none; }
html:not(.hc) .tm-chg, html:not(.hc) .tm-other, html:not(.hc) .tm-whyd > summary, html:not(.hc) .tm-why summary,
html:not(.hc) .wl2-note a, html:not(.hc) .kid-gate .btn-link { text-decoration: none; }
html:not(.hc) .wl2-note a { font-weight: 700; }
.hp-list .hp-row.hp-talk { background: #2F7A5F; border-color: #2F7A5F; box-shadow: 0 8px 20px rgba(47, 122, 95, .24); }
.hp-list .hp-row.hp-talk b { color: #FFFFFF; }
.hp-list .hp-row.hp-talk small { color: #F3FAF6; }
.hp-list .hp-row.hp-talk .hp-art { background: rgba(255, 255, 255, .2) !important; color: #FFFFFF !important; }
.hp-list .hp-row.hp-talk .chev { color: #D7ECDF; }
html.hc .hp-list .hp-row.hp-talk { background: #FFFFFF; border-color: #000000; box-shadow: none; }
html.hc .hp-list .hp-row.hp-talk b, html.hc .hp-list .hp-row.hp-talk small { color: #000000; }

.tm-card .tm-in .tm-cap { justify-content: center; }
.tm-card .tm-in .tm-whyd > summary { text-align: center; }
.tm-alist .tm-topic { width: 100%; font: inherit; text-align: start; cursor: pointer; border-style: dashed; background: #F7FAF8; }
html:not(.hc) .tm-alist .tm-topic b { color: #2F6B52; }
html.hc .tm-alist .tm-topic { background: #fff; border: 2px dashed #000; color: #000; }
.legal-links { margin: 6px 0 10px; font-size: 14px; color: var(--muted); }
.legal-links a { color: #2F6B8A; font-weight: 700; text-decoration: none; }
html.hc .legal-links a { color: #000; text-decoration: underline; }
.brand { display: inline-flex; align-items: center; text-decoration: none; }
.brand-logo { height: 36px; width: auto; display: block; }
.brand-logo.lg-dark { display: none; }
html.dark:not(.hc) .brand-logo.lg-light { display: none; }
html.dark:not(.hc) .brand-logo.lg-dark { display: block; }
@media (max-width: 360px) { .brand-logo { height: 32px; } }
.theme-set { display: flex; flex-direction: column; gap: 8px; padding-bottom: 12px; margin-bottom: 4px; border-bottom: 1px solid #E4ECE7; }
.theme-set .chips { display: flex; flex-wrap: wrap; gap: 8px; }
.theme-set .chip.on { background: #2F6B52; color: #fff; border-color: #2F6B52; }
html { color-scheme: light; }
html.dark:not(.hc) { color-scheme: dark; }
.mc-grid span.on.m1, .mc-grid span.on.m2, .mc-grid span.on.m3, .mc-grid span.on.m4 { color: #10201A; }
.ex-head > p { opacity: 1; }
