Files
yogibook_aury_new/wp plugin/yogasoul-eventi/assets/yogasoul-eventi.css
T
2026-09-17 16:53:51 +02:00

498 lines
9.3 KiB
CSS

/* YogaSoul Eventi — stili widget (namespaced .yse-) */
.yse-widget {
--yse-ink: #2b2622;
--yse-muted: #8c837c;
--yse-line: #ece7e2;
--yse-card: #ffffff;
max-width: 720px;
margin: 0 auto;
font-family:
"Inter",
system-ui,
-apple-system,
sans-serif;
color: var(--yse-ink);
line-height: 1.55;
}
.yse-widget * {
box-sizing: border-box;
}
.yse-empty {
text-align: center;
color: var(--yse-muted);
padding: 26px;
}
.yse-card {
--yse-accent: #4caf50;
--yse-accent-soft: color-mix(in srgb, var(--yse-accent) 10%, white);
--yse-accent-ink: color-mix(in srgb, var(--yse-accent) 62%, black);
background: var(--yse-card);
border-radius: 18px;
box-shadow: 0 14px 40px rgba(43, 38, 34, 0.1);
overflow: hidden;
}
.yse-card + .yse-card {
margin-top: 22px;
}
/* Header compatto */
.yse-chead {
display: flex;
gap: 16px;
padding: 18px 22px;
align-items: flex-start;
}
.yse-datechip {
flex-shrink: 0;
border: 1px solid var(--yse-line);
border-radius: 12px;
padding: 7px 11px 5px;
text-align: center;
min-width: 54px;
}
.yse-datechip .yse-m {
font-size: 10.5px;
font-weight: 600;
letter-spacing: 0.12em;
color: var(--yse-accent-ink);
}
.yse-datechip .yse-d {
font-family: "Fraunces", serif;
font-size: 23px;
font-weight: 600;
color: var(--yse-ink);
line-height: 1;
}
.yse-main {
flex: 1;
min-width: 0;
}
.yse-title-row {
display: flex;
align-items: center;
gap: 10px;
flex-wrap: wrap;
}
.yse-title-row h3 {
font-family: "Fraunces", serif;
font-weight: 500;
font-size: 21px;
margin: 0;
color: var(--yse-ink);
}
.yse-toggle {
background: none;
border: none;
color: var(--yse-accent-ink);
font-weight: 600;
font-size: 13px;
cursor: pointer;
display: inline-flex;
align-items: center;
gap: 4px;
padding: 2px;
}
.yse-toggle svg {
width: 15px;
height: 15px;
transition: transform 0.2s;
}
.yse-toggle.yse-on svg {
transform: rotate(180deg);
}
.yse-meta {
display: flex;
flex-wrap: wrap;
gap: 6px 20px;
margin-top: 9px;
}
.yse-item {
display: flex;
align-items: center;
gap: 7px;
color: var(--yse-muted);
font-size: 13.5px;
}
.yse-item svg {
width: 16px;
height: 16px;
color: var(--yse-accent-ink);
flex-shrink: 0;
}
.yse-item strong {
color: var(--yse-ink);
font-weight: 600;
}
.yse-price {
flex-shrink: 0;
align-self: flex-start;
background: var(--yse-accent);
color: #fff;
font-weight: 600;
font-size: 14px;
padding: 7px 13px;
border-radius: 999px;
}
/* Dettagli espandibili */
.yse-details {
display: none;
border-top: 1px solid var(--yse-line);
}
.yse-details.yse-open {
display: block;
}
.yse-hero {
position: relative;
height: 260px;
background: linear-gradient(
135deg,
var(--yse-accent-ink),
var(--yse-accent)
);
}
.yse-hero img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
}
.yse-emblem {
position: absolute;
inset: 0;
display: flex;
align-items: center;
justify-content: center;
color: rgba(255, 255, 255, 0.35);
}
.yse-emblem svg {
width: 72px;
height: 72px;
}
.yse-body {
padding: 22px;
}
.yse-section {
margin-top: 24px;
}
.yse-body h4 {
font-family: "Fraunces", serif;
font-weight: 600;
font-size: 18px;
color: var(--yse-ink);
margin: 0 0 10px;
display: flex;
align-items: center;
gap: 9px;
}
.yse-body h4 svg {
width: 19px;
height: 19px;
color: var(--yse-accent-ink);
}
.yse-desc {
font-size: 15px;
color: #4a433d;
}
.yse-desc p {
margin: 0 0 10px;
}
.yse-desc img {
max-width: 100%;
border-radius: 10px;
}
.yse-detail-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
gap: 12px;
margin-top: 22px;
}
.yse-detail {
background: var(--yse-accent-soft);
border: 1px solid color-mix(in srgb, var(--yse-accent) 18%, white);
border-radius: 13px;
padding: 14px 15px;
}
.yse-dh {
display: flex;
align-items: center;
gap: 8px;
font-weight: 600;
color: var(--yse-accent-ink);
margin-bottom: 6px;
font-size: 13.5px;
}
.yse-dh svg {
width: 16px;
height: 16px;
}
.yse-dt {
font-size: 13.5px;
color: #4a433d;
}
.yse-gallery {
display: flex;
gap: 10px;
flex-wrap: wrap;
}
.yse-gallery img {
width: 100px;
height: 100px;
object-fit: cover;
border-radius: 11px;
cursor: pointer;
transition:
transform 0.15s,
box-shadow 0.15s;
}
.yse-gallery img:hover {
transform: translateY(-2px);
box-shadow: 0 8px 18px rgba(0, 0, 0, 0.15);
}
.yse-map {
border: 0;
width: 100%;
height: 210px;
border-radius: 13px;
display: block;
}
/* Booking */
.yse-booking {
padding: 18px 22px;
border-top: 1px solid var(--yse-line);
}
.yse-soldout {
text-align: center;
font-weight: 600;
color: #c0392b;
}
.yse-wl-banner {
background: color-mix(in srgb, var(--yse-accent) 12%, white);
color: var(--yse-accent-ink);
border-radius: 12px;
padding: 12px 14px;
font-size: 13.5px;
margin-bottom: 14px;
}
.yse-bcompact {
display: flex;
align-items: flex-end;
gap: 18px;
flex-wrap: wrap;
}
.yse-btitle {
font-family: "Fraunces", serif;
font-weight: 600;
font-size: 18px;
color: var(--yse-ink);
margin-right: auto;
align-self: center;
}
.yse-lbl {
font-size: 12px;
color: var(--yse-muted);
text-transform: uppercase;
letter-spacing: 0.05em;
margin-bottom: 5px;
}
.yse-stepper {
display: flex;
align-items: center;
border: 1px solid var(--yse-line);
border-radius: 11px;
overflow: hidden;
background: #fff;
}
.yse-stepper button {
border: none;
background: #fff;
width: 42px;
height: 44px;
font-size: 21px;
color: var(--yse-accent-ink);
cursor: pointer;
line-height: 1;
}
.yse-stepper button:disabled {
color: #cfc8c2;
cursor: not-allowed;
}
.yse-num {
width: 50px;
text-align: center;
font-size: 16px;
font-weight: 600;
}
.yse-total .yse-val {
font-family: "Fraunces", serif;
font-size: 24px;
font-weight: 600;
color: var(--yse-accent-ink);
}
.yse-cta {
border: none;
border-radius: 11px;
background: var(--yse-accent);
color: #fff;
font-size: 15px;
font-weight: 600;
font-family: inherit;
cursor: pointer;
transition: filter 0.15s;
}
.yse-cta:hover {
filter: brightness(0.94);
}
.yse-cta:disabled {
background: #cfc8c2;
cursor: not-allowed;
}
.yse-open {
padding: 13px 24px;
}
.yse-full {
width: 100%;
padding: 14px;
margin-top: 6px;
}
.yse-bform {
display: none;
margin-top: 18px;
padding-top: 18px;
border-top: 1px dashed var(--yse-line);
}
.yse-bform.yse-open {
display: block;
}
.yse-frow {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 12px;
}
.yse-field {
margin-bottom: 12px;
}
.yse-field label {
display: block;
font-size: 13px;
font-weight: 600;
color: var(--yse-ink);
margin-bottom: 5px;
}
.yse-field input {
width: 100%;
border: 1px solid var(--yse-line);
border-radius: 10px;
padding: 11px 13px;
font-size: 15px;
font-family: inherit;
background: #fff;
color: var(--yse-ink);
}
.yse-field input:focus {
outline: none;
border-color: var(--yse-accent);
box-shadow: 0 0 0 3px color-mix(in srgb, var(--yse-accent) 22%, white);
}
.yse-consent {
font-size: 13px;
color: #4a433d;
display: flex;
gap: 9px;
align-items: flex-start;
margin-bottom: 9px;
}
.yse-consent input {
margin-top: 3px;
}
.yse-hp {
position: absolute !important;
left: -9999px !important;
width: 1px;
height: 1px;
}
.yse-error {
color: #c0392b;
font-size: 13px;
margin-top: 8px;
min-height: 18px;
}
.yse-done {
text-align: center;
padding: 8px 4px;
}
.yse-done .yse-ok {
width: 52px;
height: 52px;
border-radius: 50%;
background: var(--yse-accent);
color: #fff;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 10px;
}
.yse-done h3 {
margin: 0 0 6px;
font-family: "Fraunces", serif;
}
.yse-done p {
color: #4a433d;
font-size: 14px;
margin: 2px 0;
}
/* Lightbox */
.yse-lightbox {
position: fixed;
inset: 0;
background: rgba(24, 19, 16, 0.9);
display: none;
align-items: center;
justify-content: center;
z-index: 99999;
padding: 24px;
}
.yse-lightbox.yse-open {
display: flex;
}
.yse-lightbox img {
max-width: 92vw;
max-height: 86vh;
border-radius: 12px;
}
.yse-lightbox .yse-lbclose {
position: absolute;
top: 18px;
right: 22px;
color: #fff;
font-size: 34px;
cursor: pointer;
background: none;
border: none;
line-height: 1;
}
@media (max-width: 560px) {
.yse-hero {
height: 200px;
}
.yse-title-row h3 {
font-size: 19px;
}
.yse-frow {
grid-template-columns: 1fr;
}
.yse-btitle {
width: 100%;
margin-bottom: 4px;
}
}
@media (prefers-reduced-motion: reduce) {
.yse-widget * {
transition: none !important;
}
}