:root {
  --app-bg: #eef6fd;
  --app-card: #ffffff;
  --app-text: #102f4d;
  --app-muted: #5e7690;
  --app-border: #dce8f2;
  --app-primary: #0b6bcb;
  --app-primary-strong: #0759ab;
  --app-shadow: 0 8px 24px rgba(30, 77, 115, .08);
  --app-shadow-lg: 0 18px 48px rgba(30, 77, 115, .15);
  --app-radius: 22px;
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  --blue: #0877d1;
  --green: #0a8a61;
  --purple: #7650c7;
  --orange: #d46b0b;
  --teal: #087f82;
  --pink: #bd477d;
}
[data-bs-theme="dark"] {
  --app-bg: #08131c;
  --app-card: #101d27;
  --app-text: #eaf4fc;
  --app-muted: #9db0bf;
  --app-border: #243746;
  --app-primary: #5aaeff;
  --app-primary-strong: #86c4ff;
  --app-shadow: 0 10px 28px rgba(0,0,0,.22);
  --app-shadow-lg: 0 20px 55px rgba(0,0,0,.35);
}
* { box-sizing: border-box; }
html { background: var(--app-bg); }
body { min-height: 100vh; margin: 0; padding-bottom: calc(84px + var(--safe-bottom)); background: var(--app-bg); color: var(--app-text); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
button, input { font: inherit; }
button { -webkit-tap-highlight-color: transparent; }
.svg-sprite { position: absolute; width: 0; height: 0; overflow: hidden; }
.icon { width: 1.1rem; height: 1.1rem; fill: currentColor; display: inline-block; vertical-align: middle; flex: 0 0 auto; }
.btn .icon { width: 1rem; height: 1rem; }
.material-symbols-rounded { font-family: 'Material Symbols Rounded'; font-weight: normal; font-style: normal; font-size: 24px; line-height: 1; letter-spacing: normal; text-transform: none; display: inline-block; white-space: nowrap; word-wrap: normal; direction: ltr; -webkit-font-feature-settings: 'liga'; -webkit-font-smoothing: antialiased; font-feature-settings: 'liga'; }
.text-blue { color: var(--blue)!important; }.text-green { color: var(--green)!important; }.text-purple { color: var(--purple)!important; }.text-orange { color: var(--orange)!important; }.text-teal { color: var(--teal)!important; }.text-pink { color: var(--pink)!important; }
.skip-link { position: fixed; z-index: 1100; left: .75rem; top: .75rem; padding: .55rem .8rem; border-radius: .7rem; background: var(--app-card); color: var(--app-text); box-shadow: var(--app-shadow); }
.appbar { z-index: 1025; background: color-mix(in srgb, var(--app-card) 94%, transparent); border-bottom: 1px solid var(--app-border); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.appbar__inner { min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: .75rem; }
.appbar__brand { border: 0; background: transparent; color: inherit; padding: .35rem 0; display: flex; align-items: center; gap: .65rem; min-width: 0; text-align: left; }
.brand-symbol { color: var(--blue); font-size: 30px; }
.appbar__titles { min-width: 0; display: grid; line-height: 1.1; }
.appbar__titles strong { font-size: .9rem; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.appbar__titles small { margin-top: .25rem; color: var(--app-muted); font-size: .72rem; }
.appbar__actions { display: flex; align-items: center; gap: .25rem; }
.clean-icon-button { width: 42px; height: 42px; border: 1px solid transparent; border-radius: 50%; background: transparent; color: var(--app-text); display: grid; place-items: center; transition: .18s ease; }
.clean-icon-button:hover, .clean-icon-button:focus-visible { border-color: var(--app-border); background: color-mix(in srgb, var(--app-card) 82%, var(--app-primary) 4%); color: var(--app-primary); }
.theme-icon--dark { display: none; }
[data-bs-theme="dark"] .theme-icon--light { display: none; }
[data-bs-theme="dark"] .theme-icon--dark { display: inline-block; }
.app-main { min-height: calc(100vh - 68px); }
.appbar__logo { width: 44px; height: 44px; border-radius: 14px; display: grid; place-items: center; background: color-mix(in srgb, var(--app-primary) 10%, var(--app-card)); color: var(--app-primary); border: 1px solid color-mix(in srgb, var(--app-primary) 18%, var(--app-border)); }
.hero-card { display: grid; grid-template-columns: 1.25fr .75fr; gap: 1rem; align-items: center; padding: 1.35rem; border: 1px solid var(--app-border); border-radius: 28px; background: linear-gradient(135deg, color-mix(in srgb, var(--app-card) 96%, #fff) 0%, color-mix(in srgb, var(--app-primary) 4%, var(--app-card)) 100%); box-shadow: var(--app-shadow-lg); }
.hero-card__content h1 { margin: 0; font-size: clamp(1.85rem, 4vw, 2.65rem); line-height: 1.04; font-weight: 860; letter-spacing: -.04em; }
.hero-card__content p { margin: .65rem 0 0; max-width: 56ch; color: var(--app-muted); font-size: .95rem; line-height: 1.55; }
.hero-card__visual { display: grid; place-items: center; min-height: 180px; border-radius: 24px; background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.95), rgba(255,255,255,.25) 35%, transparent 36%), linear-gradient(135deg, rgba(11,107,203,.12), rgba(11,107,203,.04)); border: 1px solid color-mix(in srgb, var(--app-primary) 18%, var(--app-border)); color: var(--app-primary); }
.hero-card__visual .icon { width: 4rem; height: 4rem; }
.metric-card { height: 100%; padding: 1rem .85rem; border: 1px solid var(--app-border); border-radius: 20px; background: var(--app-card); box-shadow: var(--app-shadow); text-align: center; }
.metric-card strong { display: block; font-size: 1.42rem; font-weight: 860; line-height: 1; }
.metric-card span { display: block; margin-top: .35rem; font-size: .8rem; font-weight: 760; }
.metric-card small { display: block; margin-top: .18rem; color: var(--app-muted); font-size: .72rem; }
.section-title { display: flex; align-items: end; justify-content: space-between; gap: 1rem; }
.section-title h2 { margin: 0; font-size: clamp(1.2rem, 2vw, 1.55rem); font-weight: 840; letter-spacing: -.02em; }
.home-action-card { width: 100%; min-height: 166px; padding: 1rem; border: 1px solid var(--app-border); border-radius: 24px; background: var(--app-card); box-shadow: var(--app-shadow); display: grid; grid-template-columns: auto 1fr auto; gap: .85rem; align-items: start; text-align: left; color: inherit; }
.home-action-card__icon { width: 48px; height: 48px; border-radius: 16px; display: grid; place-items: center; color: var(--accent); background: color-mix(in srgb, var(--accent) 12%, var(--app-card)); }
.home-action-card__icon .icon { width: 1.35rem; height: 1.35rem; }
.home-action-card strong { display: block; font-size: 1rem; font-weight: 820; }
.home-action-card small { display: block; margin-top: .3rem; color: var(--app-muted); font-size: .82rem; line-height: 1.45; }
.home-action-card__chevron { width: 1.1rem; height: 1.1rem; color: var(--accent); align-self: center; }
.card-blue { --accent: var(--blue); } .card-green { --accent: var(--green); } .card-purple { --accent: var(--purple); } .card-orange { --accent: var(--orange); } .card-teal { --accent: var(--teal); } .card-pink { --accent: var(--pink); }
.info-panel { display: flex; gap: .9rem; align-items: flex-start; padding: 1rem; border: 1px solid var(--app-border); border-radius: 24px; background: var(--app-card); box-shadow: var(--app-shadow); }
.info-panel__icon { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 16px; flex: 0 0 auto; }
.info-panel__icon .icon { width: 1.25rem; height: 1.25rem; }
.info-panel__icon--blue { color: var(--blue); background: color-mix(in srgb, var(--blue) 12%, var(--app-card)); }
.info-panel__icon--green { color: var(--green); background: color-mix(in srgb, var(--green) 12%, var(--app-card)); }
.info-panel h2 { margin: .1rem 0 0; font-size: 1.02rem; font-weight: 830; }
.info-panel p { margin: .35rem 0 0; color: var(--app-muted); font-size: .84rem; line-height: 1.5; }
.screen-heading { display: flex; align-items: flex-start; gap: .95rem; }
.screen-heading__icon { width: 60px; height: 60px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 18px; border: 1px solid var(--app-border); background: var(--app-card); box-shadow: var(--app-shadow); }
.screen-heading__icon .icon { width: 1.4rem; height: 1.4rem; }
.screen-heading__icon--blue { color: var(--blue); background: color-mix(in srgb, var(--blue) 12%, var(--app-card)); }
.screen-heading__icon--green { color: var(--green); background: color-mix(in srgb, var(--green) 12%, var(--app-card)); }
.screen-heading h1 { margin: 0; font-size: clamp(1.5rem, 4vw, 2.15rem); font-weight: 850; letter-spacing: -.03em; }
.screen-heading p { margin: .35rem 0 0; color: var(--app-muted); font-size: .9rem; line-height: 1.5; }
.search-group .input-group-text, .search-group .btn { border-color: var(--app-border); background: color-mix(in srgb, var(--app-bg) 65%, var(--app-card)); color: var(--app-muted); }
.search-group .form-control { border-color: var(--app-border); background: var(--app-card); color: var(--app-text); }
.search-group .form-control:focus { box-shadow: 0 0 0 .22rem rgba(11,107,203,.12); border-color: color-mix(in srgb, var(--app-primary) 48%, var(--app-border)); }
.system-card__icon { width: 44px; height: 44px; display: grid; place-items: center; border-radius: 15px; color: var(--accent); background: color-mix(in srgb, var(--accent) 11%, var(--app-card)); }
.system-card__icon .icon { width: 1.2rem; height: 1.2rem; }
.system-card__actions { margin-top: auto; padding-top: .8rem; border-top: 1px dashed var(--app-border); display: flex; align-items: center; justify-content: space-between; gap: .55rem; }
.system-card__actions .btn { min-height: 42px; }
.system-card__actions .btn-outline-secondary { width: 42px; height: 42px; padding: 0; border-radius: 50%; display: grid; place-items: center; }
.qr-card__content p { margin: .35rem 0 0; color: var(--app-muted); font-size: .78rem; word-break: break-word; }
.step-card { padding: 1rem; border: 1px solid var(--app-border); border-top: 4px solid var(--accent); border-radius: 24px; background: var(--app-card); box-shadow: var(--app-shadow); display: flex; flex-direction: column; gap: .9rem; }
.step-card__heading { display: flex; align-items: flex-start; gap: .75rem; }
.step-card__number { width: 36px; height: 36px; border-radius: 50%; display: grid; place-items: center; border: 2px solid var(--accent); color: var(--accent); font-size: .8rem; font-weight: 900; flex: 0 0 auto; }
.step-card h2 { margin: .08rem 0 0; font-size: 1.02rem; font-weight: 840; }
.step-card p { margin: 0; color: var(--app-muted); font-size: .84rem; line-height: 1.5; }
.step-card__qr { display: flex; align-items: center; justify-content: space-between; gap: .85rem; padding: .8rem; border-radius: 18px; background: color-mix(in srgb, var(--app-bg) 75%, var(--app-card)); }
.step-card__qr img { width: 112px; height: 112px; padding: .28rem; border-radius: 14px; background: #fff; border: 1px solid #e8edf2; }
.step-card__qr .btn { flex: 1; }
.modal-round-icon { width: 56px; height: 56px; margin: 0 auto; border-radius: 18px; display: grid; place-items: center; color: var(--app-primary); background: color-mix(in srgb, var(--app-primary) 10%, var(--app-card)); }
.toast-check { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; background: color-mix(in srgb, var(--green) 18%, var(--app-card)); color: var(--green); }
.app-view[hidden] { display: none!important; }
.page-shell { padding-top: 1.1rem; padding-bottom: 1.25rem; }
.page-heading { display: flex; gap: .85rem; align-items: flex-start; margin-bottom: 1rem; }
.heading-symbol { font-size: 31px; margin-top: .2rem; flex: 0 0 auto; }
.eyebrow { display: inline-block; font-size: .69rem; font-weight: 850; letter-spacing: .09em; color: var(--app-primary); margin-bottom: .28rem; }
.page-heading h1 { margin: 0; font-size: clamp(1.62rem, 7vw, 2.2rem); line-height: 1.08; font-weight: 850; letter-spacing: -.035em; }
.page-heading p { margin: .38rem 0 0; color: var(--app-muted); font-size: .9rem; line-height: 1.5; max-width: 760px; }
.intro-card, .usage-card, .tip-card, .filter-card, .system-card, .qr-card, .guide-card, .empty-state, .about-lead { background: var(--app-card); border: 1px solid var(--app-border); border-radius: var(--app-radius); box-shadow: var(--app-shadow); }
.intro-card { display: flex; align-items: flex-start; gap: .95rem; padding: 1rem; position: relative; overflow: hidden; }
.intro-card::after { content: ""; position: absolute; width: 100px; height: 100px; border-radius: 50%; right: -42px; top: -42px; background: rgba(11,107,203,.06); }
.intro-card__symbol { font-size: 31px; margin-top: .18rem; }
.intro-card h2 { font-size: 1.18rem; font-weight: 830; letter-spacing: -.02em; margin: 0; }
.intro-card p { margin: .38rem 0 0; color: var(--app-muted); font-size: .87rem; line-height: 1.5; }
.accent-blue { --accent: var(--blue); }.accent-green { --accent: var(--green); }.accent-purple { --accent: var(--purple); }.accent-orange { --accent: var(--orange); }.accent-teal { --accent: var(--teal); }.accent-pink { --accent: var(--pink); }
.usage-card { width: 100%; min-height: 184px; text-align: left; color: inherit; padding: 1rem; position: relative; display: flex; flex-direction: column; border-top: 4px solid var(--accent); transition: transform .18s ease, box-shadow .18s ease; }
.usage-card:hover, .usage-card:focus-visible { transform: translateY(-2px); box-shadow: var(--app-shadow-lg); outline: 0; }
.usage-card__top { display: flex; align-items: center; justify-content: space-between; gap: .6rem; margin-bottom: .8rem; }
.usage-card__top .material-symbols-rounded { font-size: 29px; }
.info-pill, .category-pill, .meta-pill { display: inline-flex; align-items: center; gap: .3rem; border: 1px solid var(--app-border); border-radius: 999px; background: color-mix(in srgb, var(--app-card) 96%, var(--app-primary) 4%); color: var(--app-muted); font-size: .68rem; font-weight: 750; line-height: 1; padding: .38rem .58rem; }
.usage-card strong { font-size: 1.02rem; font-weight: 830; }
.usage-card p { margin: .35rem 0 .85rem; color: var(--app-muted); font-size: .85rem; line-height: 1.48; }
.usage-card__action { margin-top: auto; display: flex; align-items: center; gap: .25rem; color: var(--accent); font-size: .78rem; font-weight: 800; }
.usage-card__action .material-symbols-rounded { font-size: 18px; }
.tip-card { display: flex; align-items: flex-start; gap: .8rem; padding: .95rem 1rem; border-left: 4px solid var(--accent); }
.tip-card > .material-symbols-rounded { font-size: 26px; margin-top: .05rem; }
.tip-card strong { display: block; font-size: .9rem; }
.tip-card p { margin: .25rem 0 0; color: var(--app-muted); font-size: .82rem; line-height: 1.5; }
.filter-card { padding: .9rem 1rem .8rem; }
.filter-card__heading { display: flex; align-items: center; gap: .5rem; font-size: .83rem; margin-bottom: .75rem; }
.filter-card__heading .material-symbols-rounded { font-size: 21px; }
.filter-row { display: flex; gap: .5rem; overflow-x: auto; scrollbar-width: none; padding-bottom: .2rem; }
.filter-row::-webkit-scrollbar { display: none; }
.filter-chip { flex: 0 0 auto; border: 1px solid var(--app-border); background: var(--app-card); color: var(--app-text); border-radius: 999px; min-height: 35px; padding: .35rem .72rem; font-size: .72rem; font-weight: 750; }
.filter-chip.is-active { background: var(--app-primary); color: #fff; border-color: var(--app-primary); }
.result-status { margin: .6rem 0 0; color: var(--app-muted); font-size: .72rem; }
.catalog-tools__mobile-note { padding: .8rem .9rem; border: 1px dashed var(--app-border); border-radius: 16px; background: color-mix(in srgb, var(--app-bg) 72%, var(--app-card)); color: var(--app-text); }
.catalog-tools__mobile-note strong { display: block; font-size: .82rem; }
.catalog-tools__mobile-note p { color: var(--app-muted); font-size: .78rem; line-height: 1.4; }
.catalog-tools__mobile-note-icon { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 50%; color: var(--app-primary); background: color-mix(in srgb, var(--app-primary) 12%, var(--app-card)); }
.catalog-tools__mobile-note-icon .icon { width: 1.15rem; height: 1.15rem; }
.system-card { position: relative; overflow: hidden; padding: 1rem; border-top: 4px solid var(--accent); display: flex; flex-direction: column; }
.system-card__top { display: flex; align-items: center; justify-content: space-between; gap: .7rem; margin-bottom: .8rem; }
.system-symbol { font-size: 30px; }
.category-pill { border-color: transparent; }
.category-pill--blue { color: #075fae; background: #e9f4ff; }.category-pill--green { color: #087151; background: #e7f8f1; }.category-pill--purple { color: #6843b9; background: #f0ebff; }.category-pill--orange { color: #ad5507; background: #fff1e2; }.category-pill--teal { color: #087174; background: #e3f6f6; }.category-pill--pink { color: #9f376a; background: #fdebf3; }
[data-bs-theme="dark"] .category-pill--blue, [data-bs-theme="dark"] .category-pill--green, [data-bs-theme="dark"] .category-pill--purple, [data-bs-theme="dark"] .category-pill--orange, [data-bs-theme="dark"] .category-pill--teal, [data-bs-theme="dark"] .category-pill--pink { background: color-mix(in srgb, var(--accent) 16%, var(--app-card)); color: var(--app-text); }
.system-card h2, .qr-card h2, .guide-card h2 { margin: 0; font-size: 1.03rem; font-weight: 850; letter-spacing: -.018em; }
.system-card > p { color: var(--app-muted); font-size: .84rem; line-height: 1.5; margin: .42rem 0 .9rem; }
.system-card__footer { margin-top: auto; padding-top: .75rem; border-top: 1px dashed var(--app-border); display: flex; align-items: center; justify-content: space-between; gap: .65rem; }
.system-card__url { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--app-muted); font-size: .72rem; }
.card-actions { display: flex; align-items: center; gap: .45rem; flex: 0 0 auto; }
.action-icon { width: 42px; height: 42px; border: 1px solid var(--app-border); border-radius: 50%; display: inline-grid; place-items: center; background: var(--app-card); color: var(--app-primary); padding: 0; transition: .16s ease; }
.action-icon:hover, .action-icon:focus-visible { border-color: var(--app-primary); transform: translateY(-1px); box-shadow: 0 6px 16px rgba(11,107,203,.14); }
.action-icon--primary { background: var(--app-primary); color: #fff; border-color: var(--app-primary); }
.action-icon--large { width: 50px; height: 50px; }
.action-icon .material-symbols-rounded { font-size: 21px; }
.empty-state { text-align: center; padding: 2rem 1rem; margin-top: 1rem; }
.empty-state > .material-symbols-rounded { font-size: 44px; }
.empty-state h2 { margin: .55rem 0 .25rem; font-size: 1.05rem; font-weight: 820; }
.empty-state p { color: var(--app-muted); font-size: .84rem; }
.qr-card { padding: 1rem; border-top: 4px solid var(--accent); display: grid; grid-template-columns: 1fr 108px; gap: .85rem; align-items: center; }
.qr-card__head { min-width: 0; display: flex; align-items: flex-start; gap: .65rem; }
.qr-card__head > .material-symbols-rounded { font-size: 27px; margin-top: .1rem; }
.qr-card__head h2 { margin-top: .4rem; }
.qr-card__head p { margin: .22rem 0 0; color: var(--app-muted); font-size: .72rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.qr-card > img { width: 108px; height: 108px; padding: .3rem; border: 1px solid #e8edf2; border-radius: 14px; background: #fff; }
.qr-card__actions { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: .6rem; padding-top: .75rem; border-top: 1px dashed var(--app-border); }
.qr-card__actions .btn { display: inline-flex; align-items: center; justify-content: center; gap: .4rem; min-height: 42px; font-size: .78rem; font-weight: 750; }
.qr-card__actions .btn .material-symbols-rounded { font-size: 19px; }
.guide-card { padding: 1rem; border-top: 4px solid var(--accent); display: flex; flex-direction: column; gap: .85rem; }
.guide-card__heading { display: flex; align-items: center; gap: .7rem; }
.guide-card__heading > .material-symbols-rounded { font-size: 28px; }
.guide-number { width: 34px; height: 34px; flex: 0 0 34px; display: grid; place-items: center; border-radius: 50%; border: 2px solid var(--accent); color: var(--accent); font-size: .78rem; font-weight: 900; }
.guide-card__heading h2 { margin-top: .05rem; }
.guide-card > p { color: var(--app-muted); font-size: .84rem; line-height: 1.5; margin: 0; }
.guide-qr { display: flex; align-items: center; gap: .75rem; padding: .72rem; border-radius: 16px; background: color-mix(in srgb, var(--app-bg) 75%, var(--app-card)); }
.guide-qr img { width: 92px; height: 92px; padding: .25rem; border-radius: 12px; background: #fff; flex: 0 0 auto; }
.guide-qr .btn { margin-left: auto; display: inline-flex; align-items: center; gap: .35rem; font-size: .74rem; font-weight: 750; }
.guide-qr .material-symbols-rounded { font-size: 18px; }
.guide-card__footer { margin-top: auto; padding-top: .75rem; border-top: 1px dashed var(--app-border); display: flex; align-items: center; justify-content: space-between; gap: .7rem; }
.server-box { display: flex; align-items: center; gap: .6rem; padding: .62rem .65rem .62rem .78rem; border: 1px solid var(--app-border); border-radius: 15px; background: color-mix(in srgb, var(--app-bg) 72%, var(--app-card)); }
.server-box code { min-width: 0; flex: 1; color: var(--app-text); font-size: .74rem; word-break: break-all; }
.search-fab { position: fixed; z-index: 1032; right: max(16px, env(safe-area-inset-right)); bottom: calc(88px + var(--safe-bottom)); width: 48px; height: 48px; border-radius: 50%; border: 1px solid var(--app-border); background: color-mix(in srgb, var(--app-card) 94%, transparent); color: var(--app-primary); box-shadow: 0 8px 24px rgba(18,70,111,.18); display: grid; place-items: center; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.search-fab[hidden] { display: none!important; }
.search-fab .icon { width: 1.2rem; height: 1.2rem; }
.search-dock { position: fixed; z-index: 1040; left: 12px; right: 12px; bottom: calc(84px + var(--safe-bottom)); }
.search-dock[hidden] { display: none!important; }
.search-dock__field { width: min(100%, 520px); margin: 0 auto; display: flex; align-items: center; gap: .55rem; padding: .48rem .48rem .48rem .75rem; border: 1px solid var(--app-border); border-radius: 999px; background: var(--app-card); box-shadow: var(--app-shadow-lg); }
.search-dock__field > .icon { width: 1.2rem; height: 1.2rem; flex: 0 0 auto; color: var(--app-primary); }
.search-dock input { flex: 1; min-width: 0; border: 0; outline: 0; background: transparent; color: var(--app-text); height: 38px; font-size: .9rem; }
.search-dock input::placeholder { color: var(--app-muted); opacity: .82; }
.search-dock__clear, .search-dock__close { width: 34px; height: 34px; border: 0; border-radius: 50%; display: grid; place-items: center; background: transparent; color: var(--app-muted); padding: 0; flex: 0 0 auto; }
.search-dock__clear:hover, .search-dock__close:hover { background: color-mix(in srgb, var(--app-bg) 75%, var(--app-card)); color: var(--app-primary); }
.search-dock__clear .icon, .search-dock__close .icon { width: 1rem; height: 1rem; }
.mobile-nav { z-index: 1030; background: color-mix(in srgb, var(--app-card) 96%, transparent); border-top: 1px solid var(--app-border); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); padding-bottom: var(--safe-bottom); }
.mobile-nav__inner { min-height: 72px; display: grid; grid-template-columns: repeat(4, 1fr); }
.mobile-nav__item { position: relative; border: 0; background: transparent; color: var(--app-muted); display: grid; place-items: center; align-content: center; gap: .22rem; font-size: .64rem; font-weight: 720; }
.mobile-nav__item .material-symbols-rounded { font-size: 24px; }
.mobile-nav__item::before { content: ""; position: absolute; top: 3px; width: 32px; height: 3px; border-radius: 999px; background: transparent; }
.mobile-nav__item.is-active { color: var(--app-primary); }
.mobile-nav__item.is-active::before { background: var(--app-primary); }
.qr-fullscreen { background: var(--app-bg); }
.qr-fullscreen .modal-header { background: var(--app-card); padding-top: max(1rem, env(safe-area-inset-top)); }
.qr-fullscreen__body { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1rem; overflow: auto; }
.qr-fullscreen__frame { width: min(82vw, 68vh, 620px); aspect-ratio: 1; display: grid; place-items: center; border-radius: 22px; background: #fff; padding: clamp(.8rem, 3vw, 1.4rem); box-shadow: var(--app-shadow-lg); }
.qr-fullscreen__frame img { width: 100%; height: 100%; object-fit: contain; image-rendering: pixelated; }
.qr-fullscreen__address { margin: 1rem 0 .2rem; font-weight: 800; text-align: center; word-break: break-word; }
.qr-fullscreen__hint { color: var(--app-muted); text-align: center; margin: 0; font-size: .82rem; }
.qr-fullscreen__footer { justify-content: center; gap: .7rem; background: var(--app-card); padding-bottom: calc(1rem + env(safe-area-inset-bottom)); }
.modal-content { color: var(--app-text); background: var(--app-card); }
.modal-symbol { font-size: 34px; }
.about-lead { display: flex; gap: .9rem; align-items: flex-start; padding: 1rem; box-shadow: none; }
.about-lead > .icon { width: 2rem; height: 2rem; }
.about-lead h3 { margin: 0; font-size: 1.08rem; font-weight: 850; }
.about-lead p { margin: .3rem 0 0; color: var(--app-muted); font-size: .83rem; line-height: 1.5; }
.app-accordion { --bs-accordion-bg: transparent; --bs-accordion-border-color: var(--app-border); --bs-accordion-btn-color: var(--app-text); --bs-accordion-active-color: var(--app-text); --bs-accordion-active-bg: color-mix(in srgb, var(--app-bg) 74%, var(--app-card)); --bs-accordion-color: var(--app-text); --bs-accordion-btn-focus-box-shadow: 0 0 0 .2rem rgba(11,107,203,.12); }
.app-accordion .accordion-item { background: transparent; overflow: hidden; }
.app-accordion .accordion-item:first-child { border-radius: 16px 16px 0 0; }
.app-accordion .accordion-item:last-child { border-radius: 0 0 16px 16px; }
.app-accordion .accordion-button { gap: .55rem; font-size: .84rem; font-weight: 820; padding: .9rem 1rem; }
.app-accordion .accordion-button .material-symbols-rounded { font-size: 21px; }
.app-accordion .accordion-body { color: var(--app-muted); font-size: .82rem; line-height: 1.56; padding: .95rem 1rem 1.05rem; }
.app-accordion .accordion-body ul, .app-accordion .accordion-body ol { margin: 0; padding-left: 1.15rem; }
.app-accordion .accordion-body li + li { margin-top: .45rem; }
.privacy-strip { display: flex; align-items: center; gap: .55rem; padding: .75rem .85rem; border: 1px solid color-mix(in srgb, var(--green) 28%, var(--app-border)); border-radius: 15px; background: color-mix(in srgb, var(--green) 8%, var(--app-card)); color: var(--app-text); font-size: .78rem; }
.privacy-strip .icon { width: 1.1rem; height: 1.1rem; }
.about-meta { display: flex; flex-wrap: wrap; align-items: center; gap: .45rem; }
.meta-pill { color: var(--app-text); text-decoration: none; font-size: .68rem; padding: .42rem .62rem; background: transparent; }
.meta-pill .icon { width: 1rem; height: 1rem; color: var(--app-primary); }
.meta-pill:hover { color: var(--app-primary); border-color: var(--app-primary); }
.meta-pill--version { color: var(--app-muted); }
.app-toast-container { z-index: 1090; padding-top: max(1rem, env(safe-area-inset-top))!important; }
@media (min-width: 768px) {
  body { padding-bottom: 90px; }
  .appbar__inner { min-height: 72px; }
  .page-shell { padding-top: 1.5rem; padding-bottom: 1.6rem; }
  .page-heading { margin-bottom: 1.35rem; }
  .page-heading h1 { font-size: 2.25rem; }
  .intro-card { padding: 1.25rem; }
  .usage-card { min-height: 196px; padding: 1.15rem; }
  .system-card, .qr-card, .guide-card { padding: 1.1rem; }
  .qr-card { grid-template-columns: 1fr 122px; }
  .qr-card > img { width: 122px; height: 122px; }
  .mobile-nav__inner { max-width: 760px; }
  .mobile-nav__item { font-size: .69rem; }
  .search-fab { right: 24px; bottom: 98px; }
  .search-dock { bottom: 96px; }
}
@media (min-width: 1200px) {
  .page-shell { padding-top: 1.8rem; }
  .usage-card:hover, .system-card:hover, .qr-card:hover, .guide-card:hover { box-shadow: var(--app-shadow-lg); }
  .system-card, .qr-card, .guide-card { transition: box-shadow .18s ease, transform .18s ease; }
  .system-card:hover, .qr-card:hover, .guide-card:hover { transform: translateY(-2px); }
}
@media (max-width: 390px) {
  .appbar__titles strong { font-size: .83rem; }
  .brand-symbol { font-size: 27px; }
  .clean-icon-button { width: 39px; height: 39px; }
  .page-heading h1 { font-size: 1.55rem; }
  .page-heading p { font-size: .83rem; }
  .usage-card { min-height: 174px; }
  .qr-card { grid-template-columns: 1fr 92px; }
  .qr-card > img { width: 92px; height: 92px; }
  .guide-qr { flex-direction: column; align-items: stretch; }
  .guide-qr img { width: 110px; height: 110px; align-self: center; }
  .guide-qr .btn { margin-left: 0; }
  .meta-pill { max-width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto!important; transition: none!important; animation: none!important; }
}

@media (max-width: 767.98px) {
  .screen-heading { align-items: center; }
  .screen-heading__icon { width: 56px; height: 56px; }
  .catalog-tools { border-radius: 20px; }
  .system-card, .qr-card, .guide-card { border-radius: 22px; }
  .qr-fullscreen__frame { width: min(88vw, 88vw); }
}

@media (max-width: 767.98px) {
  .hero-card { grid-template-columns: 1fr; padding: 1rem; }
  .hero-card__visual { min-height: 132px; order: -1; }
  .home-action-card { grid-template-columns: auto 1fr; min-height: unset; }
  .home-action-card__chevron { display: none; }
  .screen-heading h1 { font-size: 1.35rem; }
  .step-card__qr { flex-direction: column; align-items: stretch; }
  .step-card__qr img { align-self: center; }
  .system-card__actions { justify-content: flex-end; }
}

/* ===== v2026.7.0 — visual inspirado no Jornada e Férias ===== */
body.rh-look {
  --jf-blue: #0f5f96;
  --jf-blue-2: #1979b8;
  --jf-ink: #123b5d;
  --jf-muted: #627d92;
  --jf-line: #d7e4ee;
  --jf-paper: rgba(255,255,255,.97);
  --jf-glass: rgba(250,253,255,.92);
  --nav-home: #d38a0f;
  --nav-systems: #1880c6;
  --nav-qr: #7a5acc;
  --nav-rh: #1c9a69;
  color: var(--jf-ink);
  background:
    radial-gradient(circle at 12% 0%, rgba(71, 143, 207, .08), transparent 32%),
    linear-gradient(180deg, #f8fbfe 0, #edf5fb 300px, #eef5fb 100%);
}
body.rh-look::before {
  content: "";
  position: fixed;
  inset: 74px 0 94px 0;
  pointer-events: none;
  background-image: linear-gradient(to bottom, rgba(116,151,183,.10) 1px, transparent 1px);
  background-size: 100% 34px;
  opacity: .24;
}
body.rh-look .appbar {
  border-bottom-color: rgba(188,211,227,.9) !important;
  background: var(--jf-glass);
  box-shadow: 0 8px 24px rgba(31,72,105,.08);
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
}
body.rh-look .appbar__inner { min-height: 68px; }
body.rh-look .appbar__brand { gap: 12px; }
body.rh-look .appbar__logo {
  width: 42px; height: 42px; display: grid; place-items: center; border-radius: 14px;
  box-shadow: 0 5px 15px rgba(20, 88, 136, .18); overflow: hidden; background: transparent;
}
body.rh-look .appbar__logo-image { width: 42px; height: 42px; display: block; border-radius: 14px; }
body.rh-look .appbar__titles { display: grid; line-height: 1.1; min-width: 0; }
body.rh-look .appbar__titles strong { font-size: .98rem; font-weight: 900; color: var(--jf-ink); }
body.rh-look .appbar__titles small { margin-top: 3px; color: var(--jf-muted); font-size: .68rem; font-weight: 700; white-space: nowrap; }
body.rh-look .icon-button {
  width: 42px; height: 42px; border-radius: 14px; border: 1px solid #d5e3ee;
  background: rgba(255,255,255,.94); color: #4d6b82;
  box-shadow: 0 8px 18px rgba(31,72,105,.06);
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease, color .18s ease;
}
body.rh-look .icon-button:hover { transform: translateY(-1px); background: #edf7fd; color: var(--jf-blue); }
body.rh-look #themeToggle { color: var(--nav-home); }
body.rh-look #aboutButton { color: var(--nav-qr); }
body.rh-look .app-main { position: relative; z-index: 1; }
body.rh-look .container-xxl { width: min(1180px, calc(100% - 28px)); }
body.rh-look .hero-card,
body.rh-look .journal-card,
body.rh-look .info-panel,
body.rh-look .usage-card,
body.rh-look .home-action-card,
body.rh-look .system-card,
body.rh-look .qr-card,
body.rh-look .step-card,
body.rh-look .empty-state,
body.rh-look .about-lead {
  border: 1px solid var(--jf-line);
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(251,253,255,.96));
  box-shadow: 0 10px 28px rgba(31,78,119,.07);
}
body.rh-look .hero-card,
body.rh-look .journal-card,
body.rh-look .catalog-tools,
body.rh-look .qr-card,
body.rh-look .step-card,
body.rh-look .system-card,
body.rh-look .info-panel,
body.rh-look .usage-card,
body.rh-look .empty-state {
  position: relative; overflow: hidden;
}
body.rh-look .hero-card::before,
body.rh-look .journal-card::before,
body.rh-look .catalog-tools::before,
body.rh-look .system-card::before,
body.rh-look .qr-card::before,
body.rh-look .step-card::before,
body.rh-look .info-panel::before,
body.rh-look .usage-card::before,
body.rh-look .empty-state::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background-image: linear-gradient(to bottom, rgba(140,168,190,.08) 1px, transparent 1px);
  background-size: 100% 34px; opacity: .28;
}
body.rh-look .hero-card > *,
body.rh-look .catalog-tools > *,
body.rh-look .system-card > *,
body.rh-look .qr-card > *,
body.rh-look .step-card > *,
body.rh-look .info-panel > *,
body.rh-look .usage-card > *,
body.rh-look .empty-state > * { position: relative; z-index: 1; }
body.rh-look .eyebrow { color: #2d789e; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
body.rh-look .hero-card { border-radius: 28px; }
body.rh-look .hero-card__content h1,
body.rh-look .screen-heading h1,
body.rh-look .section-title h2,
body.rh-look h2,
body.rh-look h3 { color: #113f69; }
body.rh-look .hero-card__visual {
  border-radius: 24px;
  background: linear-gradient(180deg, #f7fbff, #e8f4fc);
  color: var(--jf-blue);
  border-color: #c5deee;
}
body.rh-look .metric-card,
body.rh-look .filter-chip,
body.rh-look .meta-pill,
body.rh-look .privacy-strip,
body.rh-look .server-box,
body.rh-look .search-dock__field {
  border-color: #d0dfeb;
  background: rgba(255,255,255,.94);
  box-shadow: 0 6px 16px rgba(26,77,114,.05);
}
body.rh-look .screen-heading__icon,
body.rh-look .home-action-card__icon,
body.rh-look .info-panel__icon,
body.rh-look .system-card__icon {
  background: transparent;
  border: 0;
  box-shadow: none;
}
body.rh-look .screen-heading__icon { width: 56px; height: 56px; border-radius: 18px; border: 1px solid #b9d9ed; background: #eaf6fd; }
body.rh-look .screen-heading__icon--green { background: #ecf9f2; border-color: #b8e2cb; }
body.rh-look .screen-heading__icon--blue { background: #eaf6fd; border-color: #b9d9ed; }
body.rh-look .home-action-card {
  align-items: center; border-radius: 22px; min-height: 166px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
body.rh-look .home-action-card:hover,
body.rh-look .system-card:hover,
body.rh-look .qr-card:hover,
body.rh-look .step-card:hover,
body.rh-look .usage-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 32px rgba(31,77,117,.11);
}
body.rh-look .home-action-card__icon .icon,
body.rh-look .screen-heading__icon .icon,
body.rh-look .system-card__icon .icon,
body.rh-look .info-panel__icon .icon,
body.rh-look .modal-symbol,
body.rh-look .meta-pill .icon,
body.rh-look .privacy-strip .icon {
  animation: navIconFloat 4.2s ease-in-out infinite;
}
body.rh-look .card-blue { --accent: #1f82c8; }
body.rh-look .card-orange { --accent: #dd8c15; }
body.rh-look .card-green { --accent: #199565; }
body.rh-look .card-purple { --accent: #7a5acc; }
body.rh-look .card-pink { --accent: #d34f86; }
body.rh-look .card-teal { --accent: #148b93; }
body.rh-look .system-card,
body.rh-look .qr-card,
body.rh-look .step-card,
body.rh-look .usage-card,
body.rh-look .info-panel { border-top: 4px solid var(--accent, #1f82c8); }
body.rh-look .info-panel__icon--blue { color: #1979b8; }
body.rh-look .info-panel__icon--green { color: #199565; }
body.rh-look .system-card__icon,
body.rh-look .home-action-card__icon { color: var(--accent, #1f82c8); }
body.rh-look .badge-purple { color: #fff; background: #7a5acc; }
body.rh-look .badge-orange { color: #fff; background: #dd8c15; }
body.rh-look .badge-teal { color: #fff; background: #148b93; }
body.rh-look .badge-pink { color: #fff; background: #d34f86; }
body.rh-look .system-card__url,
body.rh-look .qr-card p,
body.rh-look .result-status,
body.rh-look .step-card p,
body.rh-look .system-card > p { color: var(--jf-muted); }
body.rh-look .btn-primary {
  background: linear-gradient(135deg, var(--jf-blue), var(--jf-blue-2));
  border-color: transparent;
  box-shadow: 0 8px 18px rgba(19,99,153,.18);
}
body.rh-look .btn-primary:hover { filter: saturate(1.05) brightness(.98); }
body.rh-look .btn-outline-primary,
body.rh-look .btn-outline-secondary {
  border-radius: 14px;
}
body.rh-look .btn-icon-only {
  width: 44px !important; height: 44px !important; min-height: 44px !important; padding: 0 !important;
  border-radius: 14px !important; display: inline-flex !important; align-items: center; justify-content: center;
}
body.rh-look .btn-icon-only .icon { width: 1rem; height: 1rem; }
body.rh-look .system-card__actions { justify-content: space-between; }
body.rh-look .system-card__actions .btn-outline-secondary,
body.rh-look .qr-card__actions .btn-outline-secondary,
body.rh-look .qr-card__actions .btn-primary { border-radius: 14px; }
body.rh-look .step-card__number {
  box-shadow: 0 5px 14px rgba(26,95,149,.10);
  background: #fff;
}
body.rh-look .catalog-tools {
  border-radius: 24px; overflow: hidden; background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(251,253,255,.96));
}
body.rh-look .search-group .form-control,
body.rh-look .search-dock input {
  color: #102f4d; font-weight: 700;
}
body.rh-look .search-group .input-group-text {
  background: #fff; border-color: #cbdcea; color: #2079b8;
}
body.rh-look .search-group .form-control {
  border-color: #cbdcea;
}
body.rh-look .search-group .form-control:focus,
body.rh-look .search-dock__field:focus-within {
  border-color: #5aa8d9;
  box-shadow: 0 0 0 4px rgba(58,149,207,.12);
}
body.rh-look .filter-chip {
  font-weight: 850; color: #54718a; transition: transform .15s ease, background .15s ease, color .15s ease, border-color .15s ease;
}
body.rh-look .filter-chip:hover { transform: translateY(-1px); color: var(--jf-blue); background: #edf7fd; }
body.rh-look .filter-chip.is-active { color: #fff; background: linear-gradient(135deg, var(--jf-blue), var(--jf-blue-2)); border-color: transparent; }
body.rh-look .mobile-nav {
  position: fixed; inset: auto 0 0 0; background: transparent; border-top: 0; box-shadow: none; padding: 8px 10px calc(10px + var(--safe-bottom));
}
body.rh-look .mobile-nav__inner {
  width: min(820px, 100%); margin: 0 auto; min-height: 72px; border: 1px solid rgba(188,211,227,.9); border-radius: 22px;
  background: rgba(250,253,255,.96); box-shadow: 0 -8px 24px rgba(31,72,105,.08); backdrop-filter: blur(15px); -webkit-backdrop-filter: blur(15px);
}
body.rh-look .mobile-nav__item {
  border-radius: 18px; margin: 6px; color: #4d6b82; transition: transform .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
}
body.rh-look .mobile-nav__item .icon { width: 1.3rem; height: 1.3rem; animation: navIconFloat 4.2s ease-in-out infinite; }
body.rh-look .mobile-nav__item:nth-child(1) { color: var(--nav-home); }
body.rh-look .mobile-nav__item:nth-child(2) { color: var(--nav-systems); }
body.rh-look .mobile-nav__item:nth-child(3) { color: var(--nav-qr); }
body.rh-look .mobile-nav__item:nth-child(4) { color: var(--nav-rh); }
body.rh-look .mobile-nav__item:hover { background: #edf7fd; transform: translateY(-1px); }
body.rh-look .mobile-nav__item.is-active {
  background: #eaf4fb; box-shadow: inset 0 0 0 1px #c9ddeb;
}
body.rh-look .mobile-nav__item::before { display: none; }
body.rh-look .mobile-nav__item.is-active span { color: var(--jf-ink); font-weight: 850; }
body.rh-look .search-fab {
  width: 52px; height: 52px; border-radius: 18px; bottom: calc(96px + var(--safe-bottom));
  background: rgba(250,253,255,.97); color: var(--jf-blue); border-color: rgba(188,211,227,.95);
}
body.rh-look .search-dock { bottom: calc(94px + var(--safe-bottom)); }
body.rh-look .search-dock__field { border-radius: 18px; }
body.rh-look .modal-content { border-radius: 24px; }
body.rh-look .qr-fullscreen__frame { border: 1px solid #dbe7f0; }
body.rh-look .about-meta { gap: .55rem; }
body.rh-look .meta-pill {
  padding: 8px 14px; color: #174e76; font-size: .76rem; font-weight: 850; text-decoration: none;
}
body.rh-look .meta-pill--version { color: #7059b7; }
body.rh-look .app-accordion .accordion-item {
  border-radius: 18px !important; margin-bottom: 10px; overflow: hidden;
}
body.rh-look .app-accordion .accordion-button { font-weight: 850; }
body.rh-look .toast-check { background: #e6f6eb; color: #198c55; }

@keyframes navIconFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-2px); }
}

@media (min-width: 768px) {
  body.rh-look { padding-bottom: 106px; }
}
@media (max-width: 767.98px) {
  body.rh-look::before { inset: 74px 0 104px 0; }
  body.rh-look .container-xxl { width: calc(100% - 20px); }
  body.rh-look .hero-card { grid-template-columns: 1fr; padding: 1rem; }
  body.rh-look .hero-card__visual { order: -1; min-height: 126px; }
  body.rh-look .metric-card strong { font-size: 1.1rem; }
  body.rh-look #view-sistemas .screen-heading { display: none; }
  body.rh-look .system-card,
  body.rh-look .qr-card,
  body.rh-look .step-card,
  body.rh-look .usage-card,
  body.rh-look .catalog-tools { border-radius: 22px; }
  body.rh-look .system-card__actions { justify-content: flex-end; }
  body.rh-look .qr-card__actions { gap: .45rem; }
  body.rh-look .step-card__qr { flex-direction: column; align-items: stretch; }
  body.rh-look .step-card__qr img { align-self: center; }
  body.rh-look .appbar__titles strong { font-size: .92rem; }
  body.rh-look .appbar__titles small { font-size: .66rem; }
}
@media (prefers-reduced-motion: reduce) {
  body.rh-look .home-action-card:hover,
  body.rh-look .system-card:hover,
  body.rh-look .qr-card:hover,
  body.rh-look .step-card:hover,
  body.rh-look .usage-card:hover,
  body.rh-look .icon,
  body.rh-look .mobile-nav__item,
  body.rh-look .icon-button { transform: none !important; animation: none !important; }
}


/* ===== v2026.7.1 — refinamentos finos ===== */
body.rh-look { --watermark-opacity: .050; }
body.rh-look .hero-card,
body.rh-look .catalog-tools,
body.rh-look .system-card,
body.rh-look .qr-card,
body.rh-look .step-card,
body.rh-look .usage-card,
body.rh-look .info-panel,
body.rh-look .about-lead,
body.rh-look .empty-state {
  box-shadow: 0 10px 24px rgba(31,78,119,.065);
}
body.rh-look .system-card,
body.rh-look .qr-card,
body.rh-look .step-card,
body.rh-look .usage-card,
body.rh-look .home-action-card,
body.rh-look .about-lead,
body.rh-look .catalog-tools,
body.rh-look .info-panel {
  isolation: isolate;
}
body.rh-look .system-card::after,
body.rh-look .qr-card::after,
body.rh-look .step-card::after,
body.rh-look .usage-card::after,
body.rh-look .home-action-card::after,
body.rh-look .catalog-tools::after,
body.rh-look .info-panel::after,
body.rh-look .about-lead::after {
  content: "";
  position: absolute;
  right: 14px;
  bottom: 12px;
  width: 56px;
  height: 56px;
  opacity: var(--watermark-opacity);
  pointer-events: none;
  background: center / contain no-repeat url('assets/app-icons/droplet-rh.svg');
  z-index: 0;
}
body.rh-look .system-card > *,
body.rh-look .qr-card > *,
body.rh-look .step-card > *,
body.rh-look .usage-card > *,
body.rh-look .home-action-card > *,
body.rh-look .catalog-tools > *,
body.rh-look .info-panel > *,
body.rh-look .about-lead > * { position: relative; z-index: 1; }
body.rh-look .system-card { padding: 1.08rem 1.02rem .96rem; gap: .1rem; }
body.rh-look .system-card > p { margin: .48rem 0 .98rem; line-height: 1.56; }
body.rh-look .system-card__url { font-size: .73rem; margin-top: auto; }
body.rh-look .system-card__top { margin-bottom: .92rem; }
body.rh-look .system-card__actions,
body.rh-look .qr-card__actions { padding-top: .85rem; gap: .7rem; }
body.rh-look .qr-card { padding: 1rem 1rem .95rem; }
body.rh-look .qr-card > img { border-radius: 16px; }
body.rh-look .step-card { padding: 1.06rem 1rem; }
body.rh-look .catalog-tools { padding: 1rem; }
body.rh-look .filter-row { gap: .55rem; }
body.rh-look .filter-chip { padding: .62rem .92rem; }
body.rh-look .result-status { font-size: .78rem; }
body.rh-look .about-lead { padding: 1rem 1rem .95rem; border-radius: 22px; }
body.rh-look .about-lead h3 { font-size: 1.08rem; }
body.rh-look .about-lead p { font-size: .9rem; line-height: 1.55; }
body.rh-look .app-accordion .accordion-item { border-radius: 18px !important; margin-bottom: 10px; background: rgba(255,255,255,.98); }
body.rh-look .app-accordion .accordion-button { padding: 1rem 1.02rem; font-size: .9rem; }
body.rh-look .app-accordion .accordion-button .icon { width: 1.05rem; height: 1.05rem; }
body.rh-look .app-accordion .accordion-body { font-size: .86rem; line-height: 1.66; padding: 1rem 1.02rem 1.08rem; }
body.rh-look .app-accordion .accordion-body li + li { margin-top: .55rem; }
body.rh-look .about-color-blue { color: #1979b8; }
body.rh-look .about-color-orange { color: #dd8c15; }
body.rh-look .about-color-green { color: #199565; }
body.rh-look .about-color-purple { color: #7a5acc; }
body.rh-look .about-color-teal { color: #148b93; }
body.rh-look .about-color-pink { color: #d34f86; }
body.rh-look .privacy-strip { margin-top: .2rem; margin-bottom: .85rem; }
body.rh-look .about-meta { justify-content: flex-start; margin-top: .1rem; }
body.rh-look .meta-pill { background: rgba(255,255,255,.9); }
body.rh-look .inline-tip {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  color: var(--jf-muted);
  font-size: .79rem;
  margin-top: -.1rem;
}
body.rh-look .inline-tip .icon { width: 1rem; height: 1rem; color: #1979b8; flex: 0 0 auto; }
body.rh-look .action-icon.action-icon-flat,
body.rh-look .action-icon.btn-icon-only {
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #1f82c8 !important;
}
body.rh-look .action-icon.action-icon-flat:hover,
body.rh-look .action-icon.btn-icon-only:hover {
  color: #0f5f96 !important;
  transform: translateY(-1px);
}
body.rh-look .action-icon.action-icon-flat .icon,
body.rh-look .action-icon.btn-icon-only .icon {
  width: 1.14rem; height: 1.14rem;
}
body.rh-look .qr-card__actions > .btn-primary { padding-inline: 1rem; }
body.rh-look .search-fab {
  width: 42px;
  height: 42px;
  border-radius: 16px;
  right: 12px;
  bottom: calc(86px + var(--safe-bottom));
  opacity: .92;
  box-shadow: 0 8px 18px rgba(31,72,105,.10);
}
body.rh-look .search-fab .icon { width: 1.05rem; height: 1.05rem; }
body.rh-look .search-dock { bottom: calc(86px + var(--safe-bottom)); }
body.rh-look .search-dock__field { max-width: 460px; padding: .42rem .45rem .42rem .7rem; }
body.rh-look .search-dock input { height: 34px; font-size: .88rem; }
body.rh-look .search-dock__clear, body.rh-look .search-dock__close { width: 30px; height: 30px; }
body.rh-look .modal-header { padding: 1rem 1.15rem; }
body.rh-look .modal-body { padding: 1rem 1.15rem 1.1rem !important; }
body.rh-look .modal-round-icon { color: #1979b8; }
body.rh-look .qr-fullscreen__frame { border-radius: 22px; }
body.rh-look .qr-fullscreen__address { margin-top: .75rem; }
body.rh-look .screen-heading + .inline-tip { margin-bottom: .65rem; }
body.rh-look #view-qrcodes .container-xxl,
body.rh-look #view-sistemas .container-xxl,
body.rh-look #view-meurh .container-xxl { padding-bottom: 8.7rem !important; }
body.rh-look .empty-state { border-radius: 22px; }
@media (max-width: 767.98px) {
  body.rh-look .modal-body { padding: .95rem .9rem 1rem !important; }
  body.rh-look .about-lead { padding: .9rem .9rem .86rem; }
  body.rh-look .app-accordion .accordion-button { padding: .92rem .92rem; font-size: .88rem; }
  body.rh-look .app-accordion .accordion-body { padding: .9rem .92rem .98rem; font-size: .84rem; }
  body.rh-look .search-fab {
    right: 10px;
    bottom: calc(94px + var(--safe-bottom));
  }
  body.rh-look .search-dock {
    left: 10px; right: 10px; bottom: calc(90px + var(--safe-bottom));
  }
  body.rh-look .inline-tip { font-size: .76rem; }
}


/* ===== v2026.7.2 — hero RH e remoção de marca d'água ===== */
body.rh-look .system-card::after,
body.rh-look .qr-card::after,
body.rh-look .step-card::after,
body.rh-look .usage-card::after,
body.rh-look .home-action-card::after,
body.rh-look .catalog-tools::after,
body.rh-look .info-panel::after,
body.rh-look .about-lead::after {
  display: none !important;
  content: none !important;
}
body.rh-look .hero-card__content p {
  max-width: 34ch;
  margin-bottom: 0;
}
body.rh-look .hero-card__visual.hero-visual-rh {
  min-height: 220px;
  padding: 1rem;
  overflow: hidden;
}
body.rh-look .hero-visual-rh__stage {
  position: relative;
  width: min(100%, 320px);
  min-height: 190px;
  display: grid;
  place-items: center;
}
body.rh-look .hero-visual-rh__drop {
  width: 114px;
  height: 114px;
  display: block;
  animation: heroDropFloat 4.8s ease-in-out infinite;
  filter: drop-shadow(0 14px 26px rgba(15,95,150,.16));
}
body.rh-look .hero-visual-rh__tag {
  position: absolute;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: .4rem .8rem;
  border-radius: 999px;
  font-size: .8rem;
  font-weight: 850;
  letter-spacing: -.01em;
  border: 1px solid rgba(186,214,232,.95);
  background: rgba(255,255,255,.94);
  box-shadow: 0 8px 18px rgba(31,72,105,.08);
  color: #164d77;
}
body.rh-look .hero-visual-rh__tag--one {
  top: 14px;
  left: 20px;
  color: #1f82c8;
  animation: heroTagOne 5.2s ease-in-out infinite;
}
body.rh-look .hero-visual-rh__tag--two {
  top: 32px;
  right: 10px;
  color: #199565;
  animation: heroTagTwo 5.6s ease-in-out infinite;
}
body.rh-look .hero-visual-rh__tag--three {
  bottom: 18px;
  right: 28px;
  color: #7a5acc;
  animation: heroTagThree 5s ease-in-out infinite;
}
body.rh-look .hero-visual-rh__pulse {
  position: absolute;
  width: 156px;
  height: 156px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(70,157,214,.20) 0%, rgba(70,157,214,.08) 44%, rgba(70,157,214,0) 70%);
  animation: heroPulse 4.8s ease-in-out infinite;
  z-index: -1;
}
@keyframes heroDropFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-7px); }
}
@keyframes heroPulse {
  0%, 100% { transform: scale(.92); opacity: .82; }
  50% { transform: scale(1.06); opacity: 1; }
}
@keyframes heroTagOne {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-5px); }
}
@keyframes heroTagTwo {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(4px); }
}
@keyframes heroTagThree {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}
@media (max-width: 767.98px) {
  body.rh-look .hero-card__visual.hero-visual-rh {
    min-height: 150px;
    padding: .7rem;
  }
  body.rh-look .hero-visual-rh__stage {
    width: 100%;
    min-height: 130px;
  }
  body.rh-look .hero-visual-rh__drop {
    width: 90px;
    height: 90px;
  }
  body.rh-look .hero-visual-rh__pulse {
    width: 126px;
    height: 126px;
  }
  body.rh-look .hero-visual-rh__tag {
    min-height: 28px;
    padding: .3rem .62rem;
    font-size: .72rem;
  }
  body.rh-look .hero-visual-rh__tag--one { top: 10px; left: 6px; }
  body.rh-look .hero-visual-rh__tag--two { top: 20px; right: 4px; }
  body.rh-look .hero-visual-rh__tag--three { bottom: 8px; right: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  body.rh-look .hero-visual-rh__drop,
  body.rh-look .hero-visual-rh__tag,
  body.rh-look .hero-visual-rh__pulse { animation: none !important; }
}

/* ===== v2026.7.3 — destaque Controle de Acesso ===== */
body.rh-look .system-card--featured {
  padding: 1.15rem 1.2rem 1rem;
  border-top-width: 5px;
  border-color: #bfe6ce;
  border-top-color: #199565;
  background:
    radial-gradient(circle at 96% 0%, rgba(25,149,101,.08), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.99), rgba(247,253,250,.97));
  box-shadow: 0 13px 30px rgba(28,105,78,.10);
}
body.rh-look .featured-access__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}
body.rh-look .featured-access__identity {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: .9rem;
}
body.rh-look .featured-access__identity .system-card__icon {
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  color: #199565;
}
body.rh-look .featured-access__identity h2 {
  margin: .34rem 0 .3rem;
  font-size: 1.22rem;
  font-weight: 900;
}
body.rh-look .featured-access__identity p {
  max-width: 72ch;
  margin: 0;
  color: var(--jf-muted);
  line-height: 1.55;
  font-size: .88rem;
}
body.rh-look .featured-access__badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .42rem;
}
body.rh-look .featured-badge-important {
  display: inline-flex;
  align-items: center;
  padding: .28rem .58rem;
  border-radius: 999px;
  color: #8a5a07;
  background: #fff4d8;
  border: 1px solid #f0d28a;
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .02em;
}
body.rh-look .featured-help-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .42rem;
  white-space: nowrap;
  border-radius: 14px;
  font-size: .8rem;
  font-weight: 850;
  padding: .6rem .82rem;
}
body.rh-look .featured-help-button .icon { width: 1rem; height: 1rem; }
body.rh-look .featured-access__quick {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin: 1rem 0 .85rem 3.5rem;
}
body.rh-look .featured-access__quick span {
  display: inline-flex;
  align-items: center;
  gap: .38rem;
  min-height: 34px;
  padding: .42rem .7rem;
  border: 1px solid #d6e5ee;
  border-radius: 999px;
  background: rgba(255,255,255,.78);
  color: #31536d;
  font-size: .75rem;
  font-weight: 820;
}
body.rh-look .featured-access__quick .icon { width: .98rem; height: .98rem; }
body.rh-look .featured-quick--blue { color: #1979b8; }
body.rh-look .featured-quick--purple { color: #7a5acc; }
body.rh-look .featured-quick--green { color: #199565; }
body.rh-look .featured-access__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .8rem;
  padding-top: .82rem;
  border-top: 1px dashed #cfe1d8;
}
body.rh-look .featured-access__icon-actions {
  margin: 0;
  padding: 0;
  border: 0;
}
body.rh-look .featured-access__icon-actions .btn-outline-secondary {
  width: 38px;
  height: 38px;
  min-height: 38px;
}
body.rh-look .access-help-modal { border-radius: 26px; overflow: hidden; }
body.rh-look .access-help-intro {
  margin: 0 0 1rem;
  color: var(--jf-muted);
  font-size: .9rem;
  line-height: 1.55;
}
body.rh-look .access-help-list {
  display: grid;
  gap: .75rem;
}
body.rh-look .access-help-item {
  --item-accent: #1979b8;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: .85rem;
  padding: .95rem;
  border: 1px solid #d7e4ee;
  border-left: 4px solid var(--item-accent);
  border-radius: 18px;
  background: linear-gradient(180deg, #fff, #fbfdff);
}
body.rh-look .access-help-item--blue { --item-accent: #1979b8; }
body.rh-look .access-help-item--purple { --item-accent: #7a5acc; }
body.rh-look .access-help-item--green { --item-accent: #199565; }
body.rh-look .access-help-item__icon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  color: var(--item-accent);
}
body.rh-look .access-help-item__icon .icon { width: 1.3rem; height: 1.3rem; }
body.rh-look .access-help-item__content { min-width: 0; }
body.rh-look .access-help-item__content h3 {
  margin: 0 0 .24rem;
  color: #113f69;
  font-size: .96rem;
  font-weight: 900;
}
body.rh-look .access-help-item__content p {
  margin: 0;
  color: var(--jf-muted);
  font-size: .82rem;
  line-height: 1.5;
}
body.rh-look .access-help-url {
  display: block;
  margin-top: .42rem;
  color: #668399;
  font-size: .68rem;
  word-break: break-all;
}
body.rh-look .access-help-link {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  min-height: 38px;
  padding: .5rem .7rem;
  border-radius: 12px;
  color: var(--item-accent);
  text-decoration: none;
  font-size: .76rem;
  font-weight: 850;
  transition: background .15s ease, transform .15s ease;
}
body.rh-look .access-help-link:hover {
  background: color-mix(in srgb, var(--item-accent) 8%, white);
  transform: translateY(-1px);
}
body.rh-look .access-help-link .icon { width: 1rem; height: 1rem; }
body.rh-look .access-help-note {
  display: flex;
  align-items: flex-start;
  gap: .5rem;
  margin-top: .9rem;
  padding-top: .85rem;
  border-top: 1px dashed #d8e5ee;
  color: #607c91;
  font-size: .76rem;
  line-height: 1.48;
}
body.rh-look .access-help-note .icon { width: 1rem; height: 1rem; color: #1979b8; flex: 0 0 auto; margin-top: .05rem; }

@media (max-width: 767.98px) {
  body.rh-look .system-card--featured { padding: 1rem .95rem .9rem; }
  body.rh-look .featured-access__header { flex-direction: column; gap: .8rem; }
  body.rh-look .featured-access__identity { gap: .65rem; }
  body.rh-look .featured-access__identity .system-card__icon { width: 38px; height: 38px; flex-basis: 38px; }
  body.rh-look .featured-access__identity h2 { font-size: 1.08rem; }
  body.rh-look .featured-access__identity p { font-size: .82rem; }
  body.rh-look .featured-access__actions-top { width: 100%; }
  body.rh-look .featured-help-button { width: 100%; }
  body.rh-look .featured-access__quick { margin: .85rem 0 .75rem; gap: .42rem; }
  body.rh-look .featured-access__quick span { min-height: 31px; padding: .34rem .55rem; font-size: .69rem; }
  body.rh-look .access-help-item {
    grid-template-columns: auto minmax(0,1fr);
    gap: .65rem;
    padding: .82rem;
  }
  body.rh-look .access-help-link {
    grid-column: 2;
    justify-self: start;
    padding-left: 0;
  }
}

/* ===== v2026.7.5 — Início robusto, cards informativos e mobile wide ===== */
body.rh-look #view-inicio .hero-card__content,
body.rh-look #view-inicio .home-action-card,
body.rh-look #view-inicio .info-panel {
  text-align: left;
}
body.rh-look #view-inicio .hero-card__content p,
body.rh-look #view-inicio .home-action-card small,
body.rh-look #view-inicio .info-panel p {
  text-align: justify;
  text-align-last: left;
  hyphens: auto;
}
body.rh-look #view-inicio .hero-card__content p {
  max-width: 62ch;
  line-height: 1.62;
}
body.rh-look .hero-feature-pills,
body.rh-look .home-card-pills,
body.rh-look .info-card-pills {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .42rem;
}
body.rh-look .hero-feature-pills { margin-top: 1rem; }
body.rh-look .feature-pill,
body.rh-look .mini-pill,
body.rh-look .home-card-badge,
body.rh-look .info-card-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  white-space: nowrap;
  font-weight: 850;
}
body.rh-look .feature-pill {
  gap: .35rem;
  min-height: 32px;
  padding: .36rem .68rem;
  border: 1px solid #d5e4ef;
  background: rgba(255,255,255,.86);
  font-size: .72rem;
}
body.rh-look .feature-pill .icon { width: .92rem; height: .92rem; }
body.rh-look .feature-pill--blue { color: #1979b8; border-color: #c4deef; background: #edf7fd; }
body.rh-look .feature-pill--purple { color: #7053c5; border-color: #d8cff3; background: #f5f1ff; }
body.rh-look .feature-pill--green { color: #168c5d; border-color: #c4e7d5; background: #effaf4; }
body.rh-look #view-inicio .home-action-card {
  min-height: 250px;
  padding: 1.08rem 1.02rem;
  grid-template-columns: auto minmax(0,1fr) auto;
  gap: .82rem;
  align-items: start;
}
body.rh-look .home-action-card__content {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
body.rh-look .home-card-badge,
body.rh-look .info-card-badge {
  min-height: 25px;
  padding: .25rem .55rem;
  margin-bottom: .58rem;
  border: 1px solid transparent;
  font-size: .64rem;
  letter-spacing: .015em;
}
body.rh-look .home-badge--blue,
body.rh-look .info-badge--blue { color: #11689f; background: #e8f5fc; border-color: #bcdced; }
body.rh-look .home-badge--purple { color: #6746bb; background: #f2edff; border-color: #d8cdf4; }
body.rh-look .home-badge--green,
body.rh-look .info-badge--green { color: #117b50; background: #e9f8f0; border-color: #bfe3cf; }
body.rh-look #view-inicio .home-action-card strong {
  color: #113f69;
  font-size: 1.03rem;
  line-height: 1.28;
}
body.rh-look #view-inicio .home-action-card small {
  margin-top: .48rem;
  color: #58748a;
  font-size: .83rem;
  line-height: 1.58;
}
body.rh-look .home-card-pills { margin-top: auto; padding-top: .85rem; }
body.rh-look .mini-pill {
  min-height: 27px;
  padding: .28rem .54rem;
  border: 1px solid #d6e4ee;
  background: #fff;
  color: #47657b;
  font-size: .64rem;
}
body.rh-look .mini-pill--blue { color: #176fa9; background: #eef8fd; border-color: #c7e1f0; }
body.rh-look .mini-pill--green { color: #147c52; background: #eef9f3; border-color: #c6e7d5; }
body.rh-look .mini-pill--purple { color: #6f53bd; background: #f5f1ff; border-color: #ddd3f5; }
body.rh-look .mini-pill--orange { color: #a86508; background: #fff7e8; border-color: #efd7a8; }
body.rh-look .mini-pill--teal { color: #0f7b82; background: #edfafa; border-color: #c4e4e6; }
body.rh-look #view-inicio .info-panel {
  min-height: 218px;
  padding: 1.08rem 1.05rem;
}
body.rh-look #view-inicio .info-panel > div:last-child {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1;
}
body.rh-look #view-inicio .info-panel h2 {
  margin: 0;
  color: #113f69;
  font-size: 1.02rem;
  line-height: 1.3;
}
body.rh-look #view-inicio .info-panel p {
  margin: .5rem 0 0;
  color: #5a758a;
  line-height: 1.6;
}
body.rh-look .info-card-pills { margin-top: auto; padding-top: .8rem; }

@media (max-width: 767.98px) {
  body.rh-look #view-inicio .home-wide-shell {
    width: calc(100% - 6px);
    max-width: none;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.rh-look #view-inicio .home-wide-shell > .hero-card,
  body.rh-look #view-inicio .home-wide-shell > .section-title,
  body.rh-look #view-inicio .home-wide-shell > .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  body.rh-look #view-inicio .home-wide-shell > .row {
    --bs-gutter-x: .45rem;
    --bs-gutter-y: .65rem;
  }
  body.rh-look #view-inicio .hero-card {
    border-radius: 20px;
    margin-left: 1px !important;
    margin-right: 1px !important;
  }
  body.rh-look #view-inicio .section-title {
    padding-left: .4rem;
    padding-right: .4rem;
  }
  body.rh-look #view-inicio .home-action-card {
    min-height: 0;
    grid-template-columns: auto minmax(0,1fr);
    border-radius: 19px;
    padding: .98rem .88rem;
    gap: .68rem;
  }
  body.rh-look #view-inicio .home-action-card__chevron { display: none; }
  body.rh-look #view-inicio .home-action-card__icon {
    width: 40px;
    height: 40px;
    align-self: start;
  }
  body.rh-look #view-inicio .home-action-card__content { width: 100%; }
  body.rh-look #view-inicio .home-action-card small { font-size: .81rem; line-height: 1.55; }
  body.rh-look #view-inicio .home-card-pills { padding-top: .72rem; }
  body.rh-look #view-inicio .info-panel {
    min-height: 0;
    border-radius: 19px;
    padding: .98rem .88rem;
    gap: .65rem;
  }
  body.rh-look #view-inicio .info-panel__icon {
    width: 38px;
    height: 38px;
  }
  body.rh-look #view-inicio .hero-feature-pills { gap: .34rem; }
  body.rh-look #view-inicio .feature-pill { min-height: 29px; padding: .31rem .55rem; font-size: .66rem; }
  body.rh-look #view-inicio .mini-pill { font-size: .61rem; }
}


/* ===== v2026.7.6 — QR clicável, busca limpa e texto justificado ===== */
body.rh-look .home-action-card__content small,
body.rh-look .hero-card__content p,
body.rh-look .info-panel p,
body.rh-look .system-card > p,
body.rh-look .system-card--featured .featured-access__description,
body.rh-look .step-card > p,
body.rh-look .about-lead p,
body.rh-look .app-accordion .accordion-body,
body.rh-look .access-option-card p {
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
}
body.rh-look .filter-toolbar {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .15rem;
  padding: .15rem 0 .35rem;
}
body.rh-look .filter-toolbar .filter-row {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
body.rh-look .filter-toolbar .result-status {
  padding-left: .15rem;
  color: var(--jf-muted);
}
body.rh-look .qr-card {
  grid-template-columns: 1fr auto;
  align-items: center;
}
body.rh-look .qr-image-trigger {
  grid-column: 2;
  grid-row: 1;
  align-self: start;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: .42rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
body.rh-look .qr-image-trigger__image {
  width: 122px;
  height: 122px;
  padding: .35rem;
  border: 1px solid #dce7ef;
  border-radius: 16px;
  background: #fff;
  object-fit: contain;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
body.rh-look .qr-image-trigger:hover .qr-image-trigger__image,
body.rh-look .qr-image-trigger:focus-visible .qr-image-trigger__image {
  transform: translateY(-2px) scale(1.015);
  border-color: #9fc9e2;
  box-shadow: 0 9px 20px rgba(31,78,119,.10);
}
body.rh-look .qr-image-trigger:focus-visible {
  outline: 3px solid rgba(31,130,200,.20);
  outline-offset: 4px;
  border-radius: 18px;
}
body.rh-look .qr-image-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 23px;
  padding: .22rem .58rem;
  border-radius: 999px;
  color: var(--accent, #1979b8);
  background: color-mix(in srgb, var(--accent, #1979b8) 9%, #fff);
  border: 1px solid color-mix(in srgb, var(--accent, #1979b8) 26%, #d7e4ee);
  font-size: .67rem;
  font-weight: 850;
  white-space: nowrap;
}
body.rh-look .qr-card__actions {
  grid-column: 1 / -1;
  min-height: 38px;
  justify-content: flex-end;
}
body.rh-look .qr-card__actions:has(.action-icon:only-child) {
  justify-content: flex-end;
}
body.rh-look .step-card__qr {
  justify-content: center;
  background: color-mix(in srgb, var(--app-bg) 72%, var(--app-card));
}
body.rh-look .step-card__qr .qr-image-trigger {
  margin-inline: auto;
}
body.rh-look .step-card__qr .qr-image-trigger__image {
  width: 118px;
  height: 118px;
}
body.rh-look .search-fab {
  z-index: 1028;
  right: max(12px, env(safe-area-inset-right));
  bottom: calc(92px + var(--safe-bottom));
}
body.rh-look .search-dock {
  z-index: 1035;
  bottom: calc(90px + var(--safe-bottom));
}
@media (min-width: 768px) {
  body.rh-look .search-fab {
    right: 24px;
    bottom: 102px;
  }
  body.rh-look .search-dock {
    bottom: 100px;
  }
}
@media (max-width: 767.98px) {
  body.rh-look .filter-toolbar {
    padding-inline: .15rem;
  }
  body.rh-look .qr-card {
    grid-template-columns: minmax(0, 1fr) auto;
  }
  body.rh-look .qr-image-trigger__image {
    width: 104px;
    height: 104px;
  }
  body.rh-look .qr-image-badge {
    font-size: .63rem;
    padding: .2rem .5rem;
  }
}

/* ===== v2026.7.7 — tipografia responsiva natural ===== */
body.rh-look .hero-card__content p,
body.rh-look .home-action-card small,
body.rh-look .home-action-card__content small,
body.rh-look .info-panel p,
body.rh-look .system-card > p,
body.rh-look .system-card--featured .featured-access__description,
body.rh-look .step-card > p,
body.rh-look .about-lead p,
body.rh-look .app-accordion .accordion-body,
body.rh-look .access-option-card p,
body.rh-look .qr-card__content p,
body.rh-look .guide-card > p {
  text-align: left !important;
  text-align-last: auto !important;
  text-justify: auto !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  text-wrap: pretty;
}

body.rh-look .hero-card__content p,
body.rh-look .home-action-card small,
body.rh-look .info-panel p,
body.rh-look .system-card > p,
body.rh-look .step-card > p {
  line-height: 1.58;
}

@media (max-width: 767.98px) {
  body.rh-look .hero-card__content p,
  body.rh-look .home-action-card small,
  body.rh-look .info-panel p,
  body.rh-look .system-card > p,
  body.rh-look .system-card--featured .featured-access__description,
  body.rh-look .step-card > p,
  body.rh-look .about-lead p,
  body.rh-look .app-accordion .accordion-body,
  body.rh-look .access-option-card p {
    letter-spacing: 0;
    line-height: 1.55;
  }
}
