@font-face {
font-family: "Manrope";
src: url("/fonts/manrope/manrope-latin-variable.woff2") format("woff2");
font-style: normal;
font-weight: 200 800;
font-display: swap;
}
*, *::before, *::after { box-sizing: border-box; }
html { min-height: 100%; color-scheme: light; -webkit-text-size-adjust: 100%; }
[data-app-theme="dark"] { color-scheme: dark; }
body { min-height: 100vh; margin: 0; }
img, picture, video, canvas, svg { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
.wrapper { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; }
.content { flex: 1; }
.navbar-brand svg { transition: transform var(--app-motion); }
.navbar-brand:hover svg { transform: scale(1.05); }
.pac-container { z-index: 999999 !important; }
.loading { opacity: 0; animation: app-fade-in .3s ease forwards; }
@keyframes app-fade-in { to { opacity: 1; } }
.appLauncherButton { background-color: var(--app-service); color: var(--app-service-text); }
.appLauncherButton:hover { background-color: var(--app-service-hover); color: var(--app-heading); }
.header-search-trigger { display: inline-flex; align-items: center; gap: 6px; height: 40px; padding: 15px; border: 1px solid var(--app-line); border-radius: 999px; background: var(--app-service); color: var(--app-text); font-size: .92rem; white-space: nowrap; transition: opacity .2s ease, transform .2s ease, visibility .2s ease, background-color .2s ease; }
.header-search-trigger:hover { background: var(--app-service-hover); }
.header-search-trigger.is-collapsed { opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-4px); }
.header-search-trigger.is-visible { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
.home-news-list { display: grid; gap: .45rem; }
.home-news-item { min-width: 0; padding: .45rem .55rem; border: 1px solid var(--app-line); border-radius: 10px; background: var(--app-service); color: var(--app-text); display: grid; grid-template-columns: auto 1fr auto; gap: .5rem; align-items: center; text-decoration: none; }
.home-news-item:hover { border-color: var(--app-line-strong); background: var(--app-service-hover); color: var(--app-heading); }
.home-news-pill { width: 1.7rem; height: 1.7rem; padding: 0; border: 1px solid var(--app-line); border-radius: 999px; background: var(--app-selection-soft); color: var(--app-selection); display: inline-flex; align-items: center; justify-content: center; font-size: .95rem; white-space: nowrap; }
.home-news-info { background: var(--app-selection-soft); color: var(--app-selection); }
.home-news-success { background: var(--app-success-soft); color: var(--app-success); }
.home-news-warning { background: var(--app-warning-soft); color: var(--app-warning); }
.home-news-danger { background: var(--app-danger-soft); color: var(--app-danger); }
.home-news-title { min-width: 0; overflow: hidden; color: var(--app-heading); font-size: .86rem; font-weight: 650; text-overflow: ellipsis; white-space: nowrap; }
.home-news-date { color: var(--app-muted); font-size: .78rem; white-space: nowrap; }
.home-news-pin { color: var(--app-muted); font-weight: 700; }
.home-panel-head { display: flex; align-items: center; justify-content: space-between; gap: .6rem; margin-bottom: .9rem; }
.home-subpanel-title { margin: 0 0 .55rem; color: var(--app-muted); font-size: .83rem; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.home-panel-link { color: var(--app-link); font-size: .78rem; font-weight: 800; letter-spacing: .04em; text-decoration: none; text-transform: uppercase; }
.home-panel-link:hover { color: var(--app-link-hover); text-decoration: underline; }
@media (max-width: 576px) {
.home-news-item { grid-template-columns: auto 1fr; }
.home-news-date { display: none; }
}
.app-container,
.app-footer__container { width: min(100% - 24px, 1320px); margin-inline: auto; }
@media (min-width: 768px) {
.app-container,
.app-footer__container { width: min(100% - 40px, 1320px); }
}
.app-document { padding-block: clamp(20px, 4vw, 40px) clamp(40px, 7vw, 72px); }
.app-document__surface { width: min(100%, 900px); margin-inline: auto; padding: clamp(20px, 4vw, 40px); border: 1px solid var(--app-line); border-radius: var(--app-radius-md); background: var(--app-surface); color: var(--app-text); }
.app-document__head { margin-bottom: clamp(20px, 4vw, 32px); padding-bottom: clamp(16px, 3vw, 24px); border-bottom: 1px solid var(--app-line); }
.app-document__title { margin: 0; color: var(--app-heading); font-size: clamp(24px, 4vw, 34px); font-weight: 800; line-height: 1.15; letter-spacing: -.03em; }
.app-document__meta { margin: 10px 0 0; color: var(--app-muted); font-size: 13px; line-height: 1.5; }
.app-document__content { display: grid; gap: clamp(20px, 3vw, 28px); font-size: 15px; line-height: 1.7; }
.app-document__content :is(h2, h3) { margin: 0 0 8px; color: var(--app-heading); font-size: clamp(17px, 2.5vw, 21px); font-weight: 800; line-height: 1.25; }
.app-document__content :is(p, ul, ol) { margin: 0; }
.app-document__content ul, .app-document__content ol { padding-left: 1.25em; }
.app-document__content li + li { margin-top: 6px; }
.app-document__content a { color: var(--app-link); font-weight: 750; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.app-document__content a:hover { color: var(--app-link-hover); }
.app-document__contact-link { font-weight: 800; text-decoration: none; }
.app-document__legal-footnote { padding-top: 1rem; border-top: 1px solid var(--app-line); }
.app-document--status .app-document__surface { width: min(100%, 640px); text-align: center; }
.app-document__content--center { justify-items: center; }
.app-document__content--center > * { max-width: 58ch; }
.app-document__content--center > .app-alert { width: 100%; max-width: 100%; justify-self: stretch; text-align: left; }
.app-document__status-icon { font-size: 42px; line-height: 1; color: var(--app-muted); }
.app-page { padding-block: clamp(20px, 4vw, 40px) clamp(40px, 7vw, 72px); }
.app-page__head { display: grid; gap: 5px; margin-bottom: clamp(18px, 3vw, 28px); }
.app-page__title { margin: 0; color: var(--app-heading); font-size: clamp(24px, 4vw, 32px); font-weight: 800; line-height: 1.15; letter-spacing: -.03em; }
.app-page__meta { margin: 0; color: var(--app-muted); font-size: 13px; line-height: 1.5; }
.app-form-actions { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; }
.app-form-actions > .app-btn { flex: 1 1 150px; }
.app-panel { min-width: 0; border: 1px solid var(--app-line); border-radius: var(--app-radius-md); background: var(--app-surface); color: var(--app-text); }
.app-panel__head { padding: var(--app-card-padding); border-bottom: 1px solid var(--app-line); }
.app-panel__head :is(h1, h2, h3) { margin: 0; color: var(--app-heading); font-size: clamp(18px, 2.5vw, 24px); font-weight: 800; line-height: 1.2; letter-spacing: -.02em; }
.app-panel__body { display: grid; gap: 16px; padding: var(--app-card-padding); }
.app-section-title { margin: 0; color: var(--app-heading); font-size: 15px; font-weight: 800; line-height: 1.3; }
.app-split-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(14px, 2vw, 22px); align-items: start; }
.app-inline-field { min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 8px; align-items: stretch; }
.app-inline-field .app-form-control,
.app-inline-field .iti { min-width: 0; }
.app-inline-field .iti .iti__tel-input { min-height: 44px; }
.app-data-row { min-width: 0; padding: 12px; border: 1px solid var(--app-line); border-radius: var(--app-radius-sm); background: var(--app-service); display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.app-data-row__main { min-width: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.app-data-row__actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }
.app-data-row__actions form { margin: 0; }
.app-badge { display: inline-flex; min-height: 24px; align-items: center; justify-content: center; padding: 3px 8px; border: 1px solid transparent; border-radius: 999px; font-size: 12px; font-weight: 800; line-height: 1; vertical-align: middle; }
.app-badge--selection { border-color: color-mix(in srgb, var(--app-selection) 35%, var(--app-line)); background: var(--app-selection-soft); color: var(--app-selection); }
.app-badge--success { border-color: color-mix(in srgb, var(--app-success) 35%, var(--app-line)); background: var(--app-success-soft); color: var(--app-success); }
.app-badge--danger { border-color: color-mix(in srgb, var(--app-danger) 35%, var(--app-line)); background: var(--app-danger-soft); color: var(--app-danger); }
.badge-tier,
.badge-reup,
.plan_badge,
.user-panel .pill-top,
.user-panel .pill-vip {
min-height: 20px;
padding: 3px 6px;
border: 1px solid color-mix(in srgb, currentColor 28%, transparent);
border-radius: 7px;
display: inline-flex;
align-items: center;
justify-content: center;
gap: 4px;
font-size: 9px;
line-height: 1;
font-weight: 800;
white-space: nowrap;
text-transform: uppercase;
vertical-align: middle;
}
.badge-tier > i,
.badge-reup > i,
.plan_badge > i,
.user-panel .pill-top > i,
.user-panel .pill-vip > i {
display: block;
line-height: 1;
transform: translateY(-1px);
}
.user-panel .pill,
.review-state-pill {
display: inline-flex;
align-items: center;
justify-content: center;
line-height: 1;
vertical-align: middle;
}
@media (max-width: 700px) {
.app-split-grid { grid-template-columns: minmax(0, 1fr); }
.app-inline-field { grid-template-columns: minmax(0, 1fr) auto; }
.app-inline-field .app-form-control,
.app-inline-field .iti { grid-column: 1 / -1; }
.app-data-row { align-items: stretch; flex-direction: column; }
.app-data-row__actions { justify-content: flex-start; }
}
#breadcrumb { margin-top: 3px; min-width: 0; text-shadow: none; border-top: 1px solid var(--app-line); border-bottom: 1px solid var(--app-line); }
#breadcrumb .breadcrumb {
min-height: 44px;
margin: 0;
padding: 0;
list-style: none;
display: flex;
align-items: center;
gap: 6px;
overflow-x: auto;
overflow-y: hidden;
color: var(--app-muted);
scrollbar-width: none;
white-space: nowrap;
}
#breadcrumb .breadcrumb::-webkit-scrollbar { display: none; }
#breadcrumb .breadcrumb-item { flex: 0 0 auto; min-width: 0; display: inline-flex; align-items: center; gap: 6px; margin: 0; padding: 0; border: 0; }
#breadcrumb .breadcrumb-separator { flex: 0 0 auto; min-height: 44px; color: var(--app-line-strong); display: inline-flex; align-items: center; }
#breadcrumb .breadcrumb-separator .ti { font-size: 9px; }
#breadcrumb .breadcrumb-item + .breadcrumb-item::before { content: none; }
#breadcrumb .breadcrumb-item a { position: static; min-height: 44px; display: inline-flex; align-items: center; margin: 0; padding: 0; border: 0; background: transparent; color: var(--app-service-text); font-size: 12px; font-weight: 700; text-decoration: none; transition: color 180ms ease; }
#breadcrumb .breadcrumb-item a::before,
#breadcrumb .breadcrumb-item a::after { content: none; border: 0; }
#breadcrumb .breadcrumb-item a:hover { color: var(--app-heading); }
#breadcrumb .breadcrumb-item.active { padding: 0; color: var(--app-heading); font-size: 12px; font-weight: 800; }
.app-icon-xs { font-size: 14px; }
.app-icon-sm { font-size: 16px; }
.app-icon-md { font-size: 20px; }
.app-icon-lg { font-size: 24px; }
.app-icon-button { width: 44px; height: 44px; padding: 0; border: 0; background: transparent; color: inherit; display: grid; place-items: center; cursor: pointer; }
.app-icon-button .ti { font-size: 22px; line-height: 1; }
.app-mask-icon {
display: inline-block;
width: 1em;
height: 1em;
background-color: currentColor;
vertical-align: -0.125em;
-webkit-mask-repeat: no-repeat;
mask-repeat: no-repeat;
-webkit-mask-position: center;
mask-position: center;
-webkit-mask-size: contain;
mask-size: contain;
}
.icon-corazon-escorten { -webkit-mask-image: url('/img/corazon-escorten.svg'); mask-image: url('/img/corazon-escorten.svg'); }
.icon-corazon-escorten.is-active,
.is-liked .icon-corazon-escorten,
.custom-stories-like-btn.liked .icon-corazon-escorten {
-webkit-mask-image: url('/img/corazon-escorten-fill.svg');
mask-image: url('/img/corazon-escorten-fill.svg');
}
.app-inline-badge { vertical-align: 0.05em; }
.app-icon-inline {
font-size: 1.15em;
vertical-align: middle;
}
.badge-verificado {
display: inline-flex;
align-items: center;
justify-content: center;
width: 1.15em;
height: 1.15em;
border-radius: 50%;
background: var(--app-selection);
color: #fff;
flex: none;
}
.badge-verificado::before { font-size: .72em; line-height: 1; }
.logo {
display: inline-block;
background-color: var(--app-heading);
-webkit-mask-repeat: no-repeat;
mask-repeat: no-repeat;
-webkit-mask-position: left center;
mask-position: left center;
-webkit-mask-size: contain;
mask-size: contain;
}
.logo-escorten { -webkit-mask-image: url('/img/logo.svg'); mask-image: url('/img/logo.svg'); }
.app-decision-list { display: grid; gap: 8px; }
.app-decision-option { min-width: 0; padding: 11px; border: 1px solid var(--app-line); border-radius: var(--app-radius-sm); background: var(--app-service); display: grid; grid-template-columns: auto 34px minmax(0, 1fr) auto; align-items: center; gap: 9px; color: var(--app-text); cursor: pointer; transition: background-color .16s ease, border-color .16s ease, color .16s ease; }
.app-decision-option:hover { border-color: var(--app-line-strong); background: var(--app-service-hover); }
.app-decision-option:has(input:checked) { border-color: var(--app-selection); background: color-mix(in srgb, var(--app-selection) 10%, var(--app-service)); color: var(--app-selection); }
.app-decision-option input { width: 17px; height: 17px; margin: 0; accent-color: var(--app-selection); }
.app-decision-option__icon { width: 34px; height: 34px; border-radius: 50%; background: color-mix(in srgb, var(--app-selection) 11%, var(--app-service)); color: var(--app-selection); display: grid; place-items: center; }
.app-decision-option__copy { min-width: 0; }
.app-decision-option__copy b { display: block; color: var(--app-heading); font-size: 13px; line-height: 1.3; }
.app-decision-option__copy small { display: block; margin-top: 2px; color: var(--app-muted); font-size: 12px; line-height: 1.4; }
.app-decision-option__check { opacity: 0; color: var(--app-selection); }
.app-decision-option:has(input:checked) .app-decision-option__check { opacity: 1; }
.app-decision-option:focus-within { outline: 2px solid var(--app-field-focus); outline-offset: 2px; }
.app-context-anchor { position: relative; }
.app-context-trigger { min-width: 44px; min-height: 44px; border-color: var(--app-line); background: var(--app-service); color: var(--app-text); }
.app-context-trigger:hover,
.app-context-trigger:focus-visible { border-color: var(--app-line-strong); background: var(--app-service-hover); color: var(--app-heading); }
.app-context-menu {
position: absolute;
top: calc(100% + 6px);
right: 0;
z-index: 10015;
min-width: 220px;
margin: 0;
padding: 6px;
list-style: none;
display: none;
border: 1px solid var(--app-line);
border-radius: var(--app-radius-md);
background: var(--app-surface-raised);
box-shadow: var(--app-shadow-toast);
}
.app-context-menu.is-open { display: block; }
.app-context-menu.is-align-start { right: auto; left: 0; }
.app-context-menu.is-align-end { right: 0; left: auto; }
.app-context-menu--fixed { position: fixed; right: auto; top: auto; max-width: min(340px, calc(100vw - 16px)); }
.app-context-menu.app-context-menu--fixed.is-open { display: grid; }
.app-context-menu--app-positioned {
position: fixed;
right: auto;
min-width: min(220px, calc(100vw - 16px));
max-width: min(340px, calc(100vw - 16px));
max-height: calc(100dvh - 16px);
overflow-y: auto;
}
.app-context-menu.app-context-menu--app-positioned.is-open { display: grid; }
.app-context-menu__head { min-height: 44px; padding: 0 4px 4px 10px; display: flex; align-items: center; justify-content: space-between; gap: 10px; border-bottom: 1px solid var(--app-line); color: var(--app-heading); font-size: 12px; font-weight: 800; }
.app-context-menu__close { flex: 0 0 auto; color: var(--app-muted); }
.app-context-menu__close:hover,
.app-context-menu__close:focus-visible { color: var(--app-heading); background: var(--app-service-hover); }
.app-context-menu > li { list-style: none; }
.app-context-menu form { margin: 0; }
.app-context-menu__item {
width: 100%;
min-height: 44px;
padding: 0 10px;
border: 0;
border-radius: 8px;
background: transparent;
color: var(--app-text);
font: inherit;
font-size: 13px;
font-weight: 700;
text-align: left;
cursor: pointer;
display: flex;
align-items: center;
gap: 9px;
text-decoration: none;
transition: background-color 180ms ease, color 180ms ease;
}
.app-context-menu__item:hover,
.app-context-menu__item:focus-visible { background: var(--app-service-hover); color: var(--app-heading); }
.app-context-menu__item.is-danger { color: var(--app-danger); }
.app-context-menu__item.is-undo { color: var(--app-accent); }
.app-context-menu__item[aria-disabled="true"] { opacity: .45; pointer-events: none; }
.app-context-menu__divider { height: 0; margin: 6px 4px; padding: 0; overflow: hidden; list-style: none; border: 0; border-top: 1px solid var(--app-line); }
@media (max-width: 760px), (pointer: coarse) {
.app-context-menu--sheet {
position: fixed;
z-index: 10015;
inset: auto 12px calc(var(--app-modal-viewport-bottom, 0px) + 70px);
min-width: 0;
max-width: none;
max-height: min(56dvh, 360px);
overflow: auto;
overscroll-behavior: contain;
}
}
.app-tabs.app-tabs { display: flex; gap: 4px; margin: 0 0 8px; padding: 0; overflow-x: auto; list-style: none; border: 0; border-bottom: 1px solid var(--app-line); border-radius: 0; background: transparent; scrollbar-width: none; }
.app-tabs.app-tabs::-webkit-scrollbar { display: none; }
.app-tabs__item { display: flex; flex: 1 1 0; min-width: 0; }
.app-tabs .app-tab { position: relative; width: 100%; min-height: 48px; padding: 0 clamp(8px, 2.5vw, 12px); border: 0; border-bottom: 0; border-radius: 0; background: transparent; color: var(--app-muted); font: inherit; font-size: 11px; font-weight: 750; line-height: 1.2; text-align: center; cursor: pointer; transition: background-color 180ms ease, color 180ms ease; }
.app-tabs .app-tab::after { position: absolute; right: 0; bottom: -1px; left: 0; height: 2px; content: ""; background: transparent; }
.app-tabs .app-tab:hover:not(.active),
.app-tabs .app-tab[aria-selected="false"]:hover { border: 0; border-bottom: 0; background: var(--app-service); color: var(--app-heading); }
.app-tabs .app-tab.active,
.app-tabs .app-tab[aria-selected="true"] { border: 0; border-bottom: 0; background: var(--app-service); color: var(--app-selection); }
.app-tabs .app-tab.active::after,
.app-tabs .app-tab[aria-selected="true"]::after { background: var(--app-selection); }
.app-tab-count { display: inline-grid; min-width: 18px; min-height: 18px; margin-left: 4px; padding: 0 4px; place-items: center; border-radius: 999px; background: var(--app-surface-raised); color: var(--app-muted); font-size: 10px; }
.app-disclosure { overflow: clip; border: 1px solid var(--app-card-line); border-radius: var(--app-radius-md); background: var(--app-card-surface); color: var(--app-text); box-shadow: var(--app-card-shadow); }
.app-disclosure__heading { margin: 0; }
.app-disclosure__trigger { width: 100%; min-height: 50px; padding: 8px var(--app-card-padding); border: 0; border-radius: 0; background: transparent; color: var(--app-service-text); font: inherit; font-size: 12px; font-weight: 750; text-align: left; cursor: pointer; display: inline-flex; align-items: center; justify-content: space-between; gap: 10px; transition: var(--app-motion); }
.app-disclosure__trigger:focus-visible { background: var(--app-service-hover); }
.app-disclosure__trigger > .ti-chevron-down { margin-left: auto; transition: transform var(--app-motion); }
.app-disclosure__trigger[aria-expanded="true"] .ti-chevron-down { transform: rotate(180deg); }
.app-disclosure__panel { display: grid; grid-template-rows: 0fr; overflow: hidden; visibility: hidden; padding: 0 var(--app-card-padding); border-top: 0 solid var(--app-line); transition: grid-template-rows .26s ease, padding .26s ease, border-top-width .26s ease, visibility .26s; }
.app-disclosure__panel > * { min-height: 0; }
.app-disclosure:has(.app-disclosure__trigger[aria-expanded="true"]) > .app-disclosure__panel { grid-template-rows: 1fr; visibility: visible; padding-block: var(--app-card-padding); border-top-width: 1px; }
:where(a, button, summary, label, [role="button"], [role="tab"], .app-tag) { transition: var(--app-motion); }
.navigation-master-block { margin-top: 28px; color: var(--app-text); display: grid; gap: 16px; }
.navigation-master-block > hr { display: none; }
.navigation-master-block > section { display: grid; justify-items: center; gap: 16px; text-align: center; }
.navigation-master-block > section:not(:has(.app-disclosure)) {
padding: clamp(16px, 3vw, 22px);
border: 1px solid var(--app-card-line);
border-radius: var(--app-radius-md);
background: var(--app-card-surface);
box-shadow: var(--app-card-shadow);
}
.navigation-master-block__section { display: grid; justify-items: center; gap: 16px; text-align: center; }
.navigation-master-block > section :is(h3, h4) { margin: 0; color: var(--app-heading); font-size: clamp(18px, 1.3vw, 21px); font-weight: 750; line-height: 1.18; letter-spacing: -.018em; }
.navigation-master-block__section :is(h3, h4) { margin: 0; color: var(--app-heading); font-size: clamp(18px, 1.3vw, 21px); font-weight: 750; line-height: 1.18; letter-spacing: -.018em; }
.navigation-master-block > section p { margin: 0; color: var(--app-muted); font-size: 13px; line-height: 1.55; }
.navigation-master-block__section p { margin: 0; color: var(--app-muted); font-size: 13px; line-height: 1.55; }
.app-tag,
.ad-popular-tag {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 4px;
line-height: 1;
vertical-align: middle;
white-space: nowrap;
}
.app-tag { min-height: 34px; padding: 6px 10px; border: 1px solid var(--app-line); border-radius: 8px; background: var(--app-service); color: var(--app-text); font-size: 12px; font-weight: 700; text-decoration: none; transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease; }
.ad-popular-tag { min-height: 28px; padding: 4px 8px; border-radius: 8px; font-size: 12px; text-decoration: none; }
.app-tag:hover { border-color: var(--app-line-strong); background: var(--app-service-hover); color: var(--app-heading); }
.navigation-master-block .tags-container { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 8px; }
.navigation-master-block > section > .app-btn { width: fit-content; justify-self: center; }
.navigation-master-block__section > .app-btn { width: fit-content; justify-self: center; }
.navigation-master-block__return { display: grid; justify-items: center; }
.navigation-master-block > section > .app-disclosure { width: 100%; }
.interlink-intents-block { display: grid; gap: 12px; margin-top: 28px; }
.navigation-master-block > .interlink-intents-block { margin-top: 0; }
@media (min-width: 992px) {
.navigation-master-block:not(:has(> .navigation-master-block__return)) {
grid-template-columns: repeat(2, minmax(0, 1fr));
grid-template-areas:
"gps gps"
"locations categories"
"intents intents";
align-items: start;
}
.navigation-master-block:not(:has(> .navigation-master-block__return)) > .navigation-master-block__section {
grid-area: gps;
}
.navigation-master-block:not(:has(> .navigation-master-block__return)) > section:has(#accordionLocations) {
grid-area: locations;
min-width: 0;
}
.navigation-master-block:not(:has(> .navigation-master-block__return)) > section:has(#accordionCategories) {
grid-area: categories;
min-width: 0;
}
.navigation-master-block:not(:has(> .navigation-master-block__return)) > .interlink-intents-block {
grid-area: intents;
grid-template-columns: repeat(2, minmax(0, 1fr));
min-width: 0;
}
.navigation-master-block > .interlink-intents-block > .interlink-intent {
min-width: 0;
}
.navigation-master-block > .interlink-intents-block > .interlink-intent:only-child {
grid-column: 1 / -1;
}
}
.card-publish-footer__section {
display: grid;
justify-items: center;
gap: 16px;
padding: clamp(16px, 3vw, 22px);
border: 1px solid var(--app-card-line);
border-radius: var(--app-radius-md);
background: var(--app-card-surface);
box-shadow: var(--app-card-shadow);
text-align: center;
}
.card-publish-footer > hr { display: none; }
.app-form { display: grid; gap: 14px; }
.app-form-field { display: grid; gap: 6px; }
.app-form-label { color: var(--app-heading); font-size: 13px; font-weight: 800; }
.app-form-control { width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid var(--app-line); border-radius: 8px; background: var(--app-surface); color: var(--app-text); font: inherit; font-size: 14px; outline: none; }
.app-country-selector { display: grid; gap: 6px; margin-bottom: 12px; }
.app-form-control:focus { border-color: var(--app-selection); box-shadow: 0 0 0 3px color-mix(in srgb, var(--app-selection) 18%, transparent); }
.app-form-control[type="file"],
.ad-form-control[type="file"] { display: flex; align-items: center; gap: 0; padding: 6px 12px 6px 6px; color: var(--app-muted); font-size: 13px; cursor: pointer; }
.app-form-control[type="file"]::file-selector-button,
.ad-form-control[type="file"]::file-selector-button { margin-right: 12px; padding: 9px 15px; border: 1px solid var(--app-line-strong); border-radius: 7px; background: var(--app-service); color: var(--app-heading); font: inherit; font-size: 12px; font-weight: 800; cursor: pointer; transition: border-color .16s ease, background-color .16s ease, color .16s ease; }
.app-form-control[type="file"]:hover::file-selector-button,
.ad-form-control[type="file"]:hover::file-selector-button { border-color: var(--app-accent); background: var(--app-service-hover); color: var(--app-accent); }
.app-form-control[type="file"]:focus-within,
.ad-form-control[type="file"]:focus-within { border-color: var(--app-selection); box-shadow: 0 0 0 3px color-mix(in srgb, var(--app-selection) 18%, transparent); }
.app-form-feedback { margin: 0; }
.banner-card { margin: 0; grid-column: 1 / -1; }
.banner-card__link { display: block; color: inherit; text-decoration: none; }
.banner-card__image { display: block; width: 100%; height: auto; border-radius: var(--app-radius-sm); }
.app-visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
[hidden] { display: none !important; }
:root {
--app-bg: #f4f4f6;
--app-surface: #ffffff;
--app-surface-raised: #ffffff;
--app-text: #39323c;
--app-heading: #211d24;
--app-muted: #747079;
--app-line: #d9d9df;
--app-line-strong: #bfc0c7;
--app-card-padding: 16px;
--app-service: #f0f1f3;
--app-service-hover: #e4e6e9;
--app-service-text: #3f4248;
--app-accent: #ef1760;
--app-accent-hover: #d80f50;
--app-link: #d80f50;
--app-link-hover: #b70c43;
--app-violet: #5a2a66;
--app-violet-hover: #492252;
--app-selection: #2563eb;
--app-success: #198754;
--app-warning: #9a6810;
--app-gold: #b88922;
--app-danger: #ad2d3f;
--app-info: #1257c9;
--app-heart: #ff0024;
--app-accent-ink: #fff;
--app-accent-soft: rgba(239, 23, 96, .10);
--app-violet-soft: rgba(90, 42, 102, .09);
--app-gold-muted: #a78336;
--app-gold-ink: #2b2109;
--app-gold-soft: rgba(184, 137, 34, .14);
--app-vip: #c79624;
--app-vip-soft: rgba(199, 150, 36, .12);
--app-buy: #f5b301;
--app-buy-hover: #e0a200;
--app-buy-ink: #2b2109;
--app-blue: #2563eb;
--app-blue-hover: #1d4fd0;
--app-coins-accent: #a95412;
--app-coins-badge: #a95412;
--app-coins-badge-ink: #fff;
--app-top-badge: var(--app-violet);
--app-top-badge-ink: #fff;
--app-tier-top-bg: rgb(73 1 117 / 75%);
--app-tier-top-ink: #f595ff;
--app-tier-vip-bg: rgb(0 0 0 / 75%);
--app-tier-vip-ink: #c9a82e;
--app-badge-media-scrim: rgb(0 0 0 / 40%);
--app-tier-top-overlay-ink: #ff9efb;
--app-tier-vip-overlay-ink: #ffdf6b;
--app-success-soft: rgba(25, 135, 84, .12);
--app-selection-soft: rgba(37, 99, 235, .11);
--app-danger-soft: rgba(173, 45, 63, .10);
--app-warning-soft: rgba(154, 104, 16, .14);
--app-info-soft: rgba(18, 87, 201, .09);
--app-focus-outline: #767c85;
--app-focus-ring: rgba(63, 66, 72, .10);
--app-surface-card: var(--app-surface);
--app-shadow-toast: 0 8px 20px rgba(26, 22, 30, .12);
--app-card-surface: linear-gradient(180deg, rgba(255, 255, 255, .98) 0%, rgba(251, 246, 255, .96) 100%);
--app-card-line: rgba(161, 115, 198, .22);
--app-card-line-hover: rgba(161, 115, 198, .40);
--app-card-shadow: 0 8px 20px rgba(82, 40, 119, .06);
--app-card-shadow-hover: 0 12px 28px rgba(82, 40, 119, .09);
--app-card-tier-base: #adaeb6;
--app-card-tier-vip-line: #b07fe0;
--app-card-tier-vip-bar: #76528d;
--app-card-tier-lux-line: #bfa76f;
--app-card-tier-lux-bar: #d4af37;
--app-radius-sm: 8px;
--app-radius-md: 12px;
--app-motion: background-color 220ms ease, border-color 220ms ease, color 220ms ease, transform 220ms ease;
--border-color: var(--app-line);
--bg-select: var(--app-service);
--bg-select-imput: var(--app-surface-raised);
--primary-hover: var(--app-text);
--text-primary: var(--app-text);
--text-secondary: var(--app-muted);
--color-primary: var(--app-accent);
--surface-soft: var(--app-service);
--surface-muted: color-mix(in srgb, var(--app-service) 72%, var(--app-bg));
--iti-hover-color: var(--app-service-hover);
--iti-border-color: var(--app-line);
--iti-dialcode-color: var(--app-muted);
--iti-dropdown-bg: var(--app-surface-raised);
--iti-arrow-color: var(--app-muted);
}
[data-app-theme="dark"] {
--app-bg: #181818;
--app-surface: #1f1f1f;
--app-surface-raised: #252525;
--app-text: #dedede;
--app-heading: #f1f1f1;
--app-muted: #9d9d9d;
--app-line: #363636;
--app-line-strong: #505050;
--app-service: #292929;
--app-service-hover: #333333;
--app-service-text: #e0e0e0;
--app-accent: #e0357f;
--app-accent-hover: #c92f70;
--app-link: #f06292;
--app-link-hover: #f78daf;
--app-violet: #7a4a94;
--app-violet-hover: #8a5aa6;
--app-selection: #6ea1ff;
--app-success: #55b57d;
--app-warning: #e0b255;
--app-gold: #d4a94c;
--app-danger: #df7479;
--app-info: #76aaff;
--app-accent-soft: rgba(224, 53, 127, .16);
--app-violet-soft: rgba(156, 114, 170, .16);
--app-gold-muted: #9d762c;
--app-gold-ink: #1a1205;
--app-gold-soft: rgba(212, 169, 76, .14);
--app-vip: #f4c65d;
--app-vip-soft: rgba(244, 198, 93, .14);
--app-buy: #f7bd1e;
--app-buy-hover: #e8ad10;
--app-buy-ink: #241a02;
--app-blue: #3d74d8;
--app-blue-hover: #4d80e0;
--app-coins-accent: #e58a32;
--app-coins-badge: #c87020;
--app-coins-badge-ink: #160d05;
--app-success-soft: rgba(85, 181, 125, .16);
--app-selection-soft: rgba(110, 161, 255, .18);
--app-danger-soft: rgba(223, 116, 121, .16);
--app-warning-soft: rgba(224, 178, 85, .16);
--app-info-soft: rgba(118, 170, 255, .15);
--app-focus-outline: #858585;
--app-focus-ring: rgba(255, 255, 255, .07);
--app-shadow-toast: 0 8px 20px rgba(0, 0, 0, .28);
--app-card-surface: linear-gradient(180deg, #242424 0%, #1d1d1d 100%);
--app-card-line: color-mix(in srgb, var(--app-accent) 16%, var(--app-line));
--app-card-line-hover: color-mix(in srgb, var(--app-accent) 30%, var(--app-line-strong));
--app-card-shadow: 0 10px 24px rgba(0, 0, 0, .30);
--app-card-shadow-hover: 0 14px 30px rgba(0, 0, 0, .38);
--app-card-tier-base: #4f4f4f;
--app-card-tier-vip-line: #9c72aa;
--app-card-tier-vip-bar: #a37cb5;
--app-card-tier-lux-line: #cbb173;
--app-card-tier-lux-bar: #d9b74f;
}
body { background: var(--app-bg); color: var(--app-text); font-family: "Manrope", "Segoe UI", system-ui, sans-serif; }
.app-btn, [class*="app-btn-"] {
display: inline-flex; align-items: center; justify-content: center; gap: 8px;
font-weight: 700; border-radius: 8px; border: 1px solid transparent;
padding: .42rem .6rem; font-size: 0.85rem; cursor: pointer; text-decoration: none !important;
transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
user-select: none; box-shadow: none !important; text-align: center;
white-space: normal !important; max-width: 100%; background-color: transparent; color: inherit;
}
@media (max-width: 576px) { .app-btn, [class*="app-btn-"] { padding: 0.5rem; font-size: 0.8rem; } }
.app-btn:hover { transform: none !important; box-shadow: none !important; }
.app-btn:active, .app-btn.active { transform: none !important; }
.app-btn:focus:not(:focus-visible) { outline: none; }
.app-btn:focus-visible { outline: 2px solid var(--app-selection); outline-offset: 2px; }
.app-btn.shadow, .app-btn.shadow-sm, .app-btn.shadow-lg,
[class*="app-btn-"].shadow, [class*="app-btn-"].shadow-sm, [class*="app-btn-"].shadow-lg { box-shadow: none !important; }
.app-btn-sm { padding: 8px 10px; font-size: 0.92rem; border-radius: 6px; font-weight: 700; }
@media (min-width: 321px) { .app-btn-sm { padding: 10px 15px; } }
.app-btn-lg { padding: 12px 24px !important; font-size: 1.1rem !important; border-radius: 12px !important; font-weight: 700 !important; }
.app-btn-primary { background-color: var(--app-accent); border-color: var(--app-accent); color: var(--app-accent-ink) !important; }
.app-btn-primary:hover { background-color: var(--app-accent-hover); border-color: var(--app-accent-hover); }
.app-btn-save { background-color: var(--app-blue); border-color: var(--app-blue); color: #fff !important; }
.app-btn-save:hover { background-color: var(--app-blue-hover); border-color: var(--app-blue-hover); }
.app-btn-buy { background-color: var(--app-buy); border-color: var(--app-buy); color: var(--app-buy-ink) !important; font-weight: 800; }
.app-btn-buy:hover { background-color: var(--app-buy-hover); border-color: var(--app-buy-hover); }
.app-btn-search { background-color: var(--app-accent) !important; border-color: var(--app-accent) !important; color: var(--app-accent-ink) !important; }
.app-btn-search:hover { background-color: var(--app-accent-hover) !important; border-color: var(--app-accent-hover) !important; }
.app-btn-danger { background-color: var(--app-danger); border-color: var(--app-danger); color: #fff !important; }
.app-btn-danger:hover { filter: brightness(.92); }
.app-btn-success { background-color: var(--app-success); border-color: var(--app-success); color: #fff !important; }
.app-btn-success:hover { filter: brightness(.92); }
.app-btn-warning { background-color: var(--app-warning); border-color: var(--app-warning); color: #fff !important; }
.app-btn-warning:hover { filter: brightness(.94); }
.app-btn-info { background-color: var(--app-selection); border-color: var(--app-selection); color: #fff !important; }
.app-btn-info:hover { filter: brightness(.94); }
.app-btn-secondary { background-color: var(--app-service); border-color: var(--app-line); color: var(--app-service-text) !important; }
.app-btn-secondary:hover { background-color: var(--app-service-hover); border-color: var(--app-line-strong); color: var(--app-heading) !important; }
.app-btn-light { background-color: var(--app-surface-raised); border-color: var(--app-line); color: var(--app-heading) !important; }
.app-btn-light:hover { background-color: var(--app-service-hover); }
.app-btn-dark { background-color: var(--app-heading); border-color: var(--app-heading); color: var(--app-surface) !important; }
.app-btn-dark:hover { filter: brightness(.9); }
.app-btn-outline-primary { border-color: var(--app-accent); color: var(--app-accent) !important; background-color: transparent; }
.app-btn-outline-primary:hover { background-color: var(--app-accent); color: var(--app-accent-ink) !important; }
.app-btn-outline-secondary { border-color: var(--app-line-strong); color: var(--app-service-text); background-color: transparent; }
.app-btn-outline-secondary:hover { background-color: var(--app-service-hover); color: var(--app-heading); }
.app-btn-outline-danger { border-color: var(--app-danger); color: var(--app-danger); background-color: transparent; }
.app-btn-outline-danger:hover { background-color: var(--app-danger); color: #fff; }
.app-btn-outline-success { border-color: var(--app-success); color: var(--app-success); background-color: transparent; }
.app-btn-outline-success:hover { background-color: var(--app-success); color: #fff; }
.app-btn:disabled, .app-btn.disabled { opacity: 0.6; cursor: not-allowed; pointer-events: none; }
.app-topbar { position: sticky; top: 0; z-index: 40; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 16px; background: var(--app-surface-raised); border-bottom: 1px solid var(--app-line); }
.app-topbar__brand { display: grid; place-items: center; color: var(--app-heart); }
.app-topbar__actions { display: flex; align-items: center; gap: 8px; }
.app-search-trigger { display: inline-flex; align-items: center; gap: 6px; height: 40px; padding: 0 14px; border: 1px solid var(--app-line); border-radius: 999px; background: var(--app-service); color: var(--app-service-text); font-size: 12px; font-weight: 700; cursor: pointer; white-space: nowrap; transition: var(--app-motion); }
.app-search-trigger:hover { background: var(--app-service-hover); }
.app-search-trigger.is-collapsed { opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-4px); }
.app-topbar__icon-btn { width: 40px; height: 40px; padding: 0; border: 0; border-radius: var(--app-radius-sm); background: var(--app-service); color: var(--app-service-text); display: grid; place-items: center; cursor: pointer; transition: var(--app-motion); }
.app-topbar__icon-btn:hover { background: var(--app-service-hover); }
.gtranslate_wrapper { display: flex !important; align-items: center; justify-content: center; width: 40px; min-width: 40px; height: 40px; min-height: 40px; margin: 0 !important; border-radius: var(--app-radius-sm); background: var(--app-service); transition: var(--app-motion); }
.gtranslate_wrapper:hover { background: var(--app-service-hover); }
.gtranslate_wrapper > #gt_float_wrapper { width: 100%; height: 100%; }
.gt_float_switcher { box-shadow: none !important; font-size: 12px !important; background: transparent !important; width: 100% !important; height: 100% !important; display: flex !important; }
.gt_float_switcher img { width: 20px !important; border-radius: 3px; pointer-events: none; }
.gt_float_switcher .gt-selected { width: 100% !important; height: 100% !important; background-color: transparent !important; padding: 0 !important; cursor: pointer; }
.gt_float_switcher .gt-selected .gt-current-lang { width: 100% !important; height: 100% !important; padding: 0 !important; color: var(--app-service-text) !important; display: flex !important; align-items: center !important; justify-content: center !important; }
.gt_float_switcher .gt-selected .gt-current-lang span.gt-lang-code,
.gt_float_switcher .gt-selected .gt-current-lang span.gt_float_switcher-arrow { display: none !important; }
.gt_float_switcher .gt-selected { z-index: 1 !important; }
.gt_float_switcher .gt_options { top: 100% !important; right: 8px !important; z-index: 2 !important; margin-top: 8px !important; box-shadow: var(--app-shadow-toast) !important; position: absolute !important; background: var(--app-surface-raised) !important; border: 1px solid var(--app-line); border-radius: var(--app-radius-sm) !important; }
.gt_float_switcher .gt_options a { color: var(--app-text) !important; }
.gt_float_switcher .gt_options a:hover { background: var(--app-service-hover) !important; color: var(--app-heading) !important; }
.app-shell-menu { position: fixed; inset: 0; z-index: 70; visibility: hidden; }
.app-shell-menu:not(.is-open) { pointer-events: none; }
.app-shell-menu.is-open { visibility: visible; pointer-events: auto; }
.app-shell-menu__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.5); opacity: 0; transition: opacity 220ms ease; }
.app-shell-menu.is-open .app-shell-menu__backdrop { opacity: 1; }
.app-shell-menu__panel { position: absolute; top: 0; right: 0; bottom: 0; width: min(88vw, 380px); background: var(--app-surface); display: flex; flex-direction: column; transform: translateX(100%); transition: transform 220ms cubic-bezier(.2,.8,.2,1); }
.app-shell-menu.is-open .app-shell-menu__panel { transform: none; }
.app-shell-menu__head { display: flex; align-items: center; justify-content: space-between; padding: 16px; border-bottom: 1px solid var(--app-line); }
.app-shell-menu__logo { height: 32px; width: 130px; }
.app-shell-menu__body { flex: 1; overflow-y: auto; padding: 16px; display: grid; align-content: start; gap: 18px; }
.app-shell-menu__section { display: grid; gap: 8px; }
.app-shell-menu__section-head { display: flex; align-items: center; justify-content: space-between; }
.app-shell-menu__section-head > span { color: var(--app-heading); font-size: 12px; font-weight: 800; }
.app-shell-menu__section-title { margin: 0; color: var(--app-muted); font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.app-shell-menu__card { min-height: 54px; padding: 8px 10px; border: 1px solid var(--app-line); border-radius: var(--app-radius-sm); background: var(--app-surface); display: flex; align-items: center; gap: 10px; text-decoration: none; color: var(--app-text); transition: var(--app-motion); }
.app-shell-menu__card:hover { background: var(--app-service-hover); }
.app-shell-menu__card span:nth-child(2) { flex: 1; font-size: 12px; font-weight: 700; color: var(--app-heading); }
.app-shell-menu__card-icon { width: 34px; height: 34px; border-radius: var(--app-radius-sm); background: var(--app-service); color: var(--app-service-text); display: grid; place-items: center; flex: 0 0 auto; overflow: hidden; }
.app-shell-menu__card-icon img { width: 100%; height: 100%; object-fit: cover; }
.app-shell-menu__card--danger span:nth-child(2) { color: var(--app-danger); }
.app-shell-menu__cta { padding: 14px; border: 1px solid var(--app-line); border-radius: var(--app-radius-md); background: var(--app-surface-raised); }
.app-shell-menu__cta p { margin: 0; color: var(--app-heading); font-size: 12px; font-weight: 800; display: flex; align-items: center; gap: 6px; }
.app-shell-menu__cta small { display: block; margin: 4px 0 10px; color: var(--app-muted); font-size: 10.5px; line-height: 1.4; }
.app-shell-menu__cta .app-btn { width: 100%; }
.app-shell-menu__foot { display: flex; align-items: center; justify-content: center; gap: 10px; padding: 14px; border-top: 1px solid var(--app-line); }
.app-shell-menu__foot a { width: 40px; height: 40px; display: grid; place-items: center; border-radius: var(--app-radius-sm); color: var(--app-muted); }
.app-shell-menu__foot a:hover { background: var(--app-service-hover); }
.app-switch { position: relative; width: 44px; height: 26px; flex: 0 0 44px; padding: 0; border: 0; background: transparent; cursor: pointer; touch-action: pan-y; user-select: none; }
.app-switch__track { position: absolute; inset: 0; margin: 0; border: 1px solid var(--app-line); border-radius: 999px; background: var(--app-service); transition: var(--app-motion); }
.app-switch:hover .app-switch__track { background: var(--app-service-hover); }
.app-switch__thumb { position: absolute; top: 1px; left: 1px; width: 22px; height: 22px; margin: 0; border: 1px solid color-mix(in srgb, var(--app-heading) 18%, transparent); border-radius: 50%; background: var(--app-surface-raised); box-shadow: var(--app-shadow-toast); display: grid; place-items: center; transition: transform 220ms cubic-bezier(.2,.8,.2,1); }
.app-switch[aria-pressed="true"] .app-switch__thumb,
.app-switch.is-on .app-switch__thumb,
[data-app-theme="dark"] .app-switch[data-theme-toggle] .app-switch__thumb { transform: translateX(18px); }
.app-switch__icon { grid-area: 1 / 1; font-size: 12px; color: var(--app-heading); opacity: 1; transform: scale(1); transition: opacity 220ms ease, transform 220ms ease; }
.app-switch [data-theme-icon="light"],
.app-switch [data-list-view-icon="large"] { opacity: 1; transform: scale(1); }
.app-switch [data-theme-icon="dark"],
.app-switch [data-list-view-icon="compact"] { opacity: 0; transform: scale(.5); }
[data-app-theme="dark"] .app-switch[data-theme-toggle] [data-theme-icon="light"],
.app-switch[aria-pressed="true"] [data-list-view-icon="large"] { opacity: 0; transform: scale(.5); }
[data-app-theme="dark"] .app-switch[data-theme-toggle] [data-theme-icon="dark"],
.app-switch[aria-pressed="true"] [data-list-view-icon="compact"] { opacity: 1; transform: scale(1); }
.app-switch:focus-visible { outline: 2px solid var(--app-accent); outline-offset: 2px; border-radius: 999px; }
.app-footer { background: var(--app-surface); border-top: 1px solid var(--app-line); padding: 32px 0 20px; }
.app-footer__grid { display: grid; grid-template-columns: 2fr 1fr 1fr 2fr; gap: 24px; }
.app-footer__brand-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 10px; flex-wrap: wrap; }
.app-footer__logo { height: 34px; width: 140px; }
.app-footer__payments { display: flex; align-items: center; gap: 14px; }
.app-footer__payments img { height: 28px; width: auto; opacity: .8; }
.app-footer__brand p { margin: 0; color: var(--app-muted); font-size: 12px; line-height: 1.6; }
.app-footer__grid h2 { margin: 0 0 10px; color: var(--app-heading); font-size: 12px; font-weight: 800; }
.app-footer__grid ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 8px; }
.app-footer__grid a { color: var(--app-muted); font-size: 12.5px; text-decoration: none; }
.app-footer__grid a:hover { color: var(--app-heading); }
.app-footer__tag-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.app-footer__tag { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 6px 12px; border: 1px solid var(--app-line); border-radius: 999px; background: var(--app-service); color: var(--app-service-text); font-size: 11.5px; font-weight: 700; line-height: 1; text-decoration: none; }
.app-footer__tag:hover { background: var(--app-service-hover); }
.app-footer__grid .app-footer__tag--primary { border-color: var(--app-accent); background: var(--app-accent); color: var(--app-accent-ink); }
.app-footer__grid .app-footer__tag--primary:hover { border-color: var(--app-accent-hover); background: var(--app-accent-hover); color: var(--app-accent-ink); }
.app-footer__connect { margin: 12px 0 0; color: var(--app-muted); font-size: 12px; }
.app-footer__connect a { color: var(--app-text); text-decoration: underline; }
.app-footer__legal { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-top: 24px; padding-top: 18px; border-top: 1px solid var(--app-line); color: var(--app-muted); font-size: 12px; }
.app-footer__legal-links { display: flex; gap: 16px; }
.app-footer__legal-links a,
.app-footer__legal-links button { color: var(--app-muted); text-decoration: none; background: none; border: 0; padding: 0; margin: 0; font: inherit; cursor: pointer; }
.app-footer__legal-links a:hover,
.app-footer__legal-links button:hover { color: var(--app-heading); }
.app-footer__disclaimer { display: block; margin: 18px 0 0; color: var(--app-muted); font-size: 11px; line-height: 1.6; text-align: center; }
.app-back-top { position: fixed; bottom: 20px; right: 20px; z-index: 45; width: 45px; height: 45px; padding: 0; border: 0; border-radius: 16px; background: rgba(0,0,0,.55); color: #fff; display: grid; place-items: center; cursor: pointer; opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(10px); transition: opacity .25s ease, transform .25s ease; }
.app-back-top.is-visible { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
body.modal-open .app-back-top { opacity: 0; visibility: hidden; pointer-events: none; }
.app-mobile-nav { display: none; }
.app-modal-gate { position: fixed; inset: 0; z-index: 80; display: flex; align-items: center; justify-content: center; overflow-y: auto; padding: clamp(28px, 7vh, 72px) 20px; visibility: hidden; background: var(--app-surface); }
.app-modal-gate.is-open { visibility: visible; }
.app-modal-gate__backdrop { display: none; }
.app-modal-gate__panel { position: relative; width: min(100%, 560px); max-height: none; overflow: visible; background: transparent; border-radius: 0; box-shadow: none; transform: translateY(8px); opacity: 0; transition: transform 220ms ease, opacity 220ms ease; }
.app-modal-gate.is-open .app-modal-gate__panel { transform: none; opacity: 1; }
.app-modal-gate__head { position: absolute; inset: -44px 0 auto; display: flex; justify-content: flex-end; padding: 0; border: 0; }
.app-modal-gate__head strong { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.app-modal-gate__body { width: min(100%, 500px); margin-inline: auto; padding: 0; text-align: left; }
.app-modal-gate__icon { display: block; width: clamp(88px, 16vw, 136px); height: auto; margin: 0 auto clamp(22px, 4vh, 34px); }
.app-modal-gate__body p { margin: 0 auto 14px; color: var(--app-text); font-size: 13px; line-height: 1.6; }
.app-modal-gate__body p:not(.app-modal-gate__warning),
.app-modal-gate__body ul { max-width: 500px; }
.app-modal-gate__body ul { margin: 0 auto 16px; padding-left: 20px; color: var(--app-text); font-size: 12.5px; line-height: 1.6; }
.app-modal-gate__body a { color: var(--app-link); }
.app-modal-gate__body p.app-modal-gate__warning { margin-bottom: 24px; color: var(--app-heading); font-size: clamp(20px, 3vw, 28px); font-weight: 800; line-height: 1.18; text-align: center; }
.app-modal-gate__body p.app-modal-gate__legal-note { margin-top: 18px; color: var(--app-muted); font-size: 11px; }
.app-modal-gate__actions { width: min(100%, 360px); margin: 26px auto 0; padding: 0; display: grid; gap: 12px; }
.app-modal-gate__actions .app-btn { width: 100%; min-height: 48px; border-radius: 999px; font-weight: 800; }
@media (max-width: 576px) {
.app-modal-gate { align-items: flex-start; padding: 48px 18px 24px; }
.app-modal-gate__head { inset: -42px 0 auto; }
.app-modal-gate__icon { width: 84px; margin-bottom: 20px; }
.app-modal-gate__body p.app-modal-gate__warning { font-size: 21px; }
.app-modal-gate__actions { margin-top: 20px; gap: 10px; }
.app-modal-gate__actions .app-btn { min-height: 46px; }
}
@media (max-width: 700px) {
.app-footer__grid { grid-template-columns: 1fr 1fr; }
.app-footer__grid > .app-footer__brand,
.app-footer__grid > div:last-child { grid-column: 1 / -1; }
body { padding-bottom: calc(63px + env(safe-area-inset-bottom)); }
.app-footer { padding-bottom: calc(20px + env(safe-area-inset-bottom)); }
.app-back-top { right: 14px; bottom: calc(88px + env(safe-area-inset-bottom)); }
.app-mobile-nav {
position: fixed;
z-index: 60;
inset: auto 0 0;
min-height: calc(60px + env(safe-area-inset-bottom));
padding: 6px 6px env(safe-area-inset-bottom);
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
align-items: end;
border-top: 1px solid var(--app-line);
background: var(--app-surface-raised);
}
.app-mobile-nav__item {
min-width: 0;
min-height: 56px;
padding: 4px 2px;
border: 0;
background: transparent;
color: var(--app-muted);
display: grid;
place-items: center;
align-content: center;
gap: 3px;
font: inherit;
font-size: 10px;
font-weight: 750;
line-height: 1.1;
text-decoration: none;
cursor: pointer;
}
.app-mobile-nav__item:hover,
.app-mobile-nav__item:focus-visible { color: var(--app-heading); }
.app-mobile-nav__item:focus-visible { outline: 2px solid var(--app-selection); outline-offset: -2px; }
.app-mobile-nav__item--primary { color: var(--app-accent); }
.app-mobile-nav__primary-icon {
width: 42px;
height: 42px;
margin-top: -24px;
border: 1px solid color-mix(in srgb, var(--app-accent) 65%, var(--app-line));
border-radius: 50%;
background: var(--app-accent);
color: var(--app-accent-ink);
display: grid;
place-items: center;
}
.app-mobile-nav__item--primary:hover .app-mobile-nav__primary-icon,
.app-mobile-nav__item--primary:focus-visible .app-mobile-nav__primary-icon { background: var(--app-accent-hover); }
}
body.modal-open { overflow: hidden; }
.app-spinner { animation: app-spinner-rotate .8s linear infinite; }
.app-spinner[hidden] { display: none !important; }
@keyframes app-spinner-rotate { to { transform: rotate(360deg); } }
@media (min-width: 761px) and (pointer: fine) {
.photos-modal .modal-sheet { max-width: 760px; }
}
.photos-modal__hint { margin: 0 0 12px; color: var(--app-muted); font-size: 12.5px; line-height: 1.5; }
.photos-modal__hint strong { color: var(--app-heading); }
.photos-modal__grid { margin-top: 4px; }
.photos-modal__foot { display: flex; justify-content: center; padding-top: 14px; }
