/* The existing Jakarta face, served as explicit static weights for every browser. */
@font-face { font-family: 'Subingresso Jakarta'; font-style: normal; font-weight: 400; font-display: swap; src: url('./fonts/jakarta-400.woff') format('woff'); }
@font-face { font-family: 'Subingresso Jakarta'; font-style: normal; font-weight: 500; font-display: swap; src: url('./fonts/jakarta-500.woff') format('woff'); }
@font-face { font-family: 'Subingresso Jakarta'; font-style: normal; font-weight: 600; font-display: swap; src: url('./fonts/jakarta-600.woff') format('woff'); }
@font-face { font-family: 'Subingresso Jakarta'; font-style: normal; font-weight: 700; font-display: swap; src: url('./fonts/jakarta-700.woff') format('woff'); }
@font-face { font-family: 'Subingresso Jakarta'; font-style: normal; font-weight: 800; font-display: swap; src: url('./fonts/jakarta-800.woff') format('woff'); }
body { font-family: 'Subingresso Jakarta', sans-serif; }
:root {
    --si-ease: cubic-bezier(.23, 1, .32, 1);
    --si-ink: #102b52;
    --si-blue: #2563eb;
    --si-blue-deep: #1e40af;
    --si-blue-strong: #1d4ed8;
    --si-blue-bright: #146ed8;
    --si-muted: #52637a;
    --si-surface: #edf3fa;
}
/* Passaggi tra l'intestazione bianca e le superfici chiare delle pagine. */
body:not(.home-page):not(.organizer-theme):has(> header, > #nav-placeholder) {
    background-image: linear-gradient(to bottom, #fff 80px, rgb(255 255 255 / 0) 200px);
}
.surface-fade-down { background-image: linear-gradient(to bottom, #fff, #f5f5f5); background-size: 100% 80px; background-position: bottom; background-repeat: no-repeat; border-bottom-width: 0; }
::selection { background: #b9d2ff; color: #102b52; }
html { scrollbar-color: #92a9c8 #edf3fa; }
input, textarea { caret-color: #2563eb; }
.site-header { background: #fff; backdrop-filter: none; border-bottom-width: 0; }
.site-header .site-nav { font-size: 14px; letter-spacing: 0; text-transform: none; color: #52637a; }
.site-header .site-nav a:hover { color: #102b52; }
body:not(.organizer-theme) .site-footer { background: #102b52; }
.site-footer h4, .site-footer a { font-size: 14px; text-transform: none; letter-spacing: 0; }
.site-footer h4 { color: #fff; }
.site-footer p, .site-footer ul, .site-footer a { color: #d3e0f3; }
.site-footer p { font-size: 14px; }
.site-footer > div > div:last-child { border-top-width: 0; }
.site-footer > div > div:first-child > div:first-child > div:first-child > div { display: none; }
.site-footer > div > div:first-child > div:first-child > div:first-child > span { font-size: 30px; letter-spacing: -.03em; }
body:not(.organizer-theme) [data-listing-id] {
    background: transparent; background-image: none; border: 0; border-radius: 12px;
    box-shadow: none; color: #102b52; transition: transform 180ms var(--si-ease);
}
body:not(.organizer-theme) [data-listing-id]:hover { box-shadow: none; }
[data-listing-id] > a:first-child { background: #dce6f3; }
#previewGrid, #resultsGrid { gap: 24px; }
#previewGrid [data-listing-id], #resultsGrid [data-listing-id] { background: #fff; }
[data-listing-id] > .listing-card-cover { height: 148px; }
.listing-card-place, .listing-detail-place { position: absolute; inset: 0; z-index: 1; display: flex; align-items: flex-end; padding: 64px 20px 16px; text-align: left; color: #fff; background: linear-gradient(transparent 20%, rgb(15 23 42 / .72) 60%, rgb(15 23 42 / .88)); pointer-events: none; }
.listing-card-cover--place > .listing-card-place, .listing-detail-cover--place > .listing-detail-place { background: none; color: #52637a; }
.listing-card-place strong, .listing-detail-place strong { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; font-size: 22px; font-weight: 700; letter-spacing: -.025em; line-height: 1.15; max-width: 100%; overflow-wrap: anywhere; text-wrap: balance; }
.listing-card-cover > div[class*="top-3"], .listing-card-cover > button { z-index: 2; }
.listing-detail-cover { height: 160px; background: #dce6f3; }
.listing-detail-place { padding: 64px 20px 44px; background: linear-gradient(transparent 35%, rgb(15 23 42 / .48) 65%, rgb(15 23 42 / .68)); }
.listing-detail-cover:not(.listing-detail-cover--place) .listing-detail-place strong { text-shadow: 0 1px 3px rgb(15 23 42 / .7); }
.listing-detail-place strong { font-size: 24px; }
.listing-detail-cover--place > .listing-detail-place { padding-bottom: 20px; }
@media (min-width:768px) {
    .listing-detail-cover { height: 224px; }
    .listing-detail-place { padding-inline: 24px; }
    .listing-detail-place strong { font-size: 32px; }
    .listing-detail-cover--place > .listing-detail-place { padding-bottom: 24px; }
}
[data-listing-id] > a:first-child > div[class*="top-3"] > span { text-transform: none; letter-spacing: 0; font-size: 13px; font-weight: 700; box-shadow: none; }
[data-listing-id] > a:first-child > div[class*="top-3"] > span.bg-emerald-500 { background: #087b61; }
[data-listing-id] > a:first-child > button { box-shadow: none; width: 36px; height: 36px; color: #52637a; }
[data-listing-id] > div { background: transparent; padding-inline: 16px; }
[data-listing-id] > div > div:first-child span { font-size: 12px; text-transform: none; letter-spacing: 0; }
[data-listing-id] > div > div:first-child > span:first-child { background: transparent; color: #334b69; padding-left: 0; font-weight: 600; }
[data-listing-id] h3 { color: #102b52; font-size: 17px; line-height: 1.4; letter-spacing: -.02em; }
[data-listing-id] .text-slate-400 { color: #52637a; }
[data-listing-id] > div > div:nth-child(3) { font-size: 13px; }
[data-listing-id] > div > a.flex > span { font-size: 13px; }
.seller-listing-count-slot { display: inline-flex; flex: none; vertical-align: middle; }
.seller-listing-count-slot:empty, .profile-event-count:empty { display: none; }
.seller-listing-count { display: inline-flex; align-items: center; gap: 5px; color: var(--si-blue-deep); font-size: 12px; font-weight: 700; line-height: 1.5; white-space: nowrap; font-variant-numeric: tabular-nums; }
.seller-listing-count[data-count-level="2"] { color: var(--si-blue-strong); }
.seller-listing-count[data-count-level="3"] { color: var(--si-blue); }
.seller-listing-count[data-count-level="4"] { color: var(--si-blue-bright); }
.seller-listing-count > i { font-size: 12px; }
.seller-identity-heading { display: flex; align-items: center; gap: 8px; min-width: 0; }
.seller-identity-heading > :first-child { min-width: 0; }
.profile-identity-heading { justify-content: center; flex-wrap: wrap; }
@media (min-width: 640px) { .profile-identity-heading { justify-content: flex-start; } }
[data-listing-id] > div > div.mt-auto { border: 0; padding-top: 18px; }
[data-listing-id] > div > div.mt-auto p:first-child { font-size: 12px; text-transform: none; letter-spacing: 0; color: #52637a; }
[data-listing-id] > div > div.mt-auto p:nth-child(2) { font-size: 22px; color: #102b52; line-height: 1.2; }
[data-listing-id] > div > div.mt-auto > div:last-child > a { background: #fff; color: #2563eb; box-shadow: none; }
[data-listing-id] > div > div.mt-auto > div:last-child > span { background: transparent; }
[data-listing-id] > div > div.mt-auto > div:last-child > span span { font-size: 12px; }
[data-listing-id] > div > div:last-child[class*="from-amber"] { background: #fff1d7; background-image: none; border: 0; }
[data-listing-id] > div > div:last-child[class*="from-amber"] span { color: #85520b; font-size: 12px; letter-spacing: 0; text-transform: none; }
[data-listing-id] :focus-visible { outline: 3px solid #2563eb; outline-offset: 3px; }
@media (prefers-reduced-motion: no-preference) {
    body:not(.organizer-theme) [data-listing-id]:hover { transform: translateY(-3px); }
}
button:not(:disabled), a[class*="bg-"] {
    transition-property: background-color, color, border-color, box-shadow, opacity, transform;
    transition-duration: 160ms;
    transition-timing-function: ease, ease, ease, ease, ease, var(--si-ease);
}
[data-listing-id] { transition: box-shadow 180ms ease, border-color 180ms ease; }
[data-listing-id] > a:first-child img { transform: none; transition: none; }
@media (prefers-reduced-motion: no-preference) {
    [data-listing-id] > a:first-child img { transition: transform 450ms var(--si-ease); }
    [data-listing-id]:hover > a:first-child img { transform: scale(1.035); }
}
[data-listing-id] button[data-save-id]:hover { transform: none; }
[data-listing-id] a { transition-property: color, background-color; transition-duration: 160ms; }
.site-wordmark { display: block; font-size: 24px; font-weight: 800; letter-spacing: -.025em; line-height: 32px; color: #0f172a; white-space: nowrap; }
.site-wordmark > span { color: #2563eb; }
.organizer-theme .site-wordmark { color: #f1f5f9; }
.organizer-theme .site-wordmark > span { color: #93c5fd; }
.site-header .site-publish { color: #52637a; background: #f1f5f9; box-shadow: none; }
.site-header .site-publish:hover { color: #334155; background: #e2e8f0; }
.organizer-theme > .site-header .site-publish { color: #e2e8f0; background: #25334a; }
.organizer-theme > .site-header .site-publish:hover { color: #fff; background: #334155; }
@media (prefers-reduced-motion:no-preference) {
    button:not(:disabled):not(:focus-visible):active,
    a[class*="bg-"]:not(:focus-visible):active { transform: scale(.97); }
}
@media (max-width:1023px) {
    .site-header .site-nav { display: none; }
    .site-header #authNav > a, .site-header .site-publish {
        width: 40px; height: 40px; flex-shrink: 0; border-radius: 12px;
    }
    .site-header #authNav > a > i, .site-header .site-publish > i { font-size: 14px; }
}
@media (max-width:639px) {
    .site-header > .site-header-inner { height: 74px; padding-inline: 18px; gap: 8px; }
    .site-wordmark { font-size: 23px; line-height: 28px; }
    .site-header > div > div:last-child, .site-header #authNav { gap: 6px; }
    .site-header #authNav > button { padding: 9px 10px; font-size: 12px; }
}
@media (max-width:379px) {
    .site-header > .site-header-inner { height: 72px; padding-inline: 14px; gap: 6px; }
    .site-wordmark { font-size: 20.7px; line-height: 28px; }
    .site-header > div > div:last-child, .site-header #authNav { gap: 5px; }
    .site-header #authNav > button { padding: 8px; font-size: 11px; }
    .site-header #authNav > a, .site-header .site-publish { width: 36px; height: 36px; }
}
.site-header :focus-visible { outline: 2px solid #2563eb; outline-offset: 3px; transition: none; }
.organizer-theme .site-header :focus-visible { outline-color: #93c5fd; }
@media (prefers-reduced-motion:reduce) {
    button:not(:disabled), a[class*="bg-"], [data-listing-id], [data-listing-id] * { transition: none; }
    button:not(:disabled):active, a[class*="bg-"]:active { transform: none; }
    .stat-update, .animate-pulse { animation: none; }
    html { scroll-behavior: auto; }
}
