:root {
    --eeva-ad-detail: #eaded3;
    --eeva-rose: #d67272;
    --eeva-berry: #8f242c;
    --eeva-deep: #661720;
    --eeva-paper: #fff9f8;
    --eeva-blush: #fbdedd;
    --eeva-line: #ecc1c0;
    --eeva-ink: #3c2225;
}

body { margin: 0; background: #e7bdbd; color: var(--eeva-ink); }
.eeva-shell {
    width: min(calc(100% - 24px), 760px);
    margin: 12px auto 26px;
    background: var(--eeva-paper);
    border-radius: 10px;
    box-shadow: 0 6px 22px #66172024;
    overflow: hidden;
    text-align: left;
}
.eeva-header { background: var(--eeva-berry); }
.eeva-brand { display: grid; place-items: center; min-height: 155px; background: radial-gradient(ellipse at center, #efcecb 38%, #e8aaa9 100%); }
.eeva-brand img { display: block; width: min(100%, 380px); height: auto; }
.eeva-menu, .eeva-status, .eeva-footer {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.eeva-menu { background: var(--eeva-berry); }
.eeva-menu a, .eeva-status a, .eeva-footer a { color: #fff; text-decoration: none; }
.eeva-menu a {
    padding: 12px 14px;
    color: #fff;
    font: 700 13px/1.3 Verdana, sans-serif;
}
.eeva-menu a:hover, .eeva-menu a[aria-current="page"] { background: var(--eeva-deep); }
.eeva-status {
    justify-content: space-between;
    gap: 6px 14px;
    padding: 7px 13px;
    background: var(--eeva-deep);
    color: #fff;
    font: 700 11px/1.4 Verdana, sans-serif;
}
.eeva-status a, .eeva-footer a { font: inherit; }
.eeva-status a:hover, .eeva-footer a:hover { text-decoration: underline; }
.eeva-footer { gap: 7px 15px; background: var(--eeva-berry); color: #fff; padding: 12px; font: 700 11px/1.5 Verdana, sans-serif; }
.eeva-home {
    display: grid;
    grid-template-columns: 140px minmax(0, 1fr) 150px;
    align-items: stretch;
}
.eeva-side:first-child > .eeva-reading-menu:first-child { margin-top: 0; }
.eeva-side { background: var(--eeva-rose); padding: 10px 5px; min-width: 0; }
.eeva-content { min-width: 0; padding: 16px; }
.eeva-content h1 { margin: 0 0 14px; font-size: 21px; line-height: 1.2; color: var(--eeva-deep); }
.eeva-cms { font: 13px/1.55 Verdana, sans-serif; overflow-wrap: anywhere; }
.eeva-cms img, .eeva-side img { max-width: 100%; height: auto; }
.eeva-side > table { max-width: 100%; margin-inline: auto; }
.category-menu { background: var(--eeva-berry); border-radius: 6px; padding: 8px 5px; margin-bottom: 9px; text-align: left; font: 13px/1.4 Verdana, Geneva, sans-serif; }
.category-menu ul { margin: 0; padding: 0; list-style: none; }
.category-menu a { display: block; padding: 7px 5px; color: #fff; font: inherit; text-decoration: none; }
.category-menu li + li { border-top: 1px solid #b85960; }
.category-menu .category-heading { font-weight: bold; }
.category-menu .listing-menu-heading, .eeva-notices h2 { font: 700 13px/1.45 Verdana, Geneva, sans-serif; }
.category-menu a:hover, .category-menu a[aria-current="page"] { background: var(--eeva-deep); }
.category-menu .category-add { background: var(--eeva-blush); color: var(--eeva-deep); margin-top: 8px; border-radius: 4px; font-weight: bold; }
.category-menu .category-add[href$="pid=lisa_kuulutus"], .gallery-menu .category-add { text-align: center; }
.category-menu .category-add:hover { background: #fff; }
.ad-card { border-bottom: 1px solid var(--eeva-ad-detail); padding: 13px 0; font: 13px/1.55 Verdana, sans-serif; overflow-wrap: anywhere; }
.ad-card:first-of-type { padding-top: 3px; }
.ad-card h2 { margin: 3px 0 0; font-size: 15px; color: var(--eeva-deep); }
.ad-card p { margin: 5px 0; }
.ad-card .ad-category, .ad-pagination a { color: var(--eeva-berry); font-weight: 700; }
.ad-meta { color: #6e484c; font-size: 11px; }
.ad-pagination { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding-block: 13px; }
.ad-pagination a { background: var(--eeva-blush); border-radius: 4px; padding: 6px 8px; }
.eeva-notices { padding: 8px; margin-bottom: 8px; background: var(--eeva-paper); border-radius: 5px; color: var(--eeva-ink); font: 11px/1.45 Verdana, sans-serif; overflow-wrap: anywhere; }
.eeva-notices h2 { margin: 0; color: var(--eeva-deep); }
.eeva-notices p { margin: 0; padding: 6px 0; border-bottom: 1px solid var(--eeva-line); }
.eeva-legacy { overflow-x: auto; }
.eeva-legacy > table:first-of-type { width: 100%; }
.eeva-legacy > table > tbody > tr > td[width="450"] { background-color: var(--eeva-paper); }
.eeva-shell a:focus-visible { outline: 2px solid #e69e4b; outline-offset: -2px; }
@media (max-width: 640px) {
    .eeva-shell { width: 100%; margin: 0 auto; border-radius: 0; }
    .eeva-home { grid-template-columns: minmax(0, 1fr); }
    .eeva-home .eeva-side { padding: 8px; }
    .eeva-home .category-menu { margin: 0; }
    .eeva-home .category-menu ul { display: flex; flex-wrap: wrap; gap: 0 6px; }
    .eeva-home .category-menu li { border: 0; }
    .eeva-home .eeva-side > :not(.category-menu) { display: none; }
    .eeva-home .eeva-side--right > :not(.category-menu) { display: block; }
    .eeva-status { justify-content: center; }
    .eeva-menu a { padding: 9px; }
}
.eeva-error-brand { min-height: 100px; }
@media (max-width: 640px) { .eeva-brand { min-height: 90px; } }
.eeva-legacy .legacy-sidebar { padding-top: 10px; }
.eeva-legacy .legacy-sidebar > .category-menu { margin: 0 5px 8px; }
.eeva-legacy .legacy-sidebar > .eeva-reading-menu { margin-inline: 5px; }
.eeva-legacy .legacy-sidebar:not(.legacy-sidebar--right) > table[cellspacing="2"] { margin-top: -2px; }
.eeva-legacy .legacy-sidebar--right > table { border-spacing: 0; }
.eeva-legacy .legacy-sidebar--right > table > tbody > tr:first-child > td { padding-top: 0; }
.eeva-side > .eeva-gallery-card:first-child,
.legacy-sidebar--right > table > tbody > tr:first-child > td > .eeva-gallery-card:first-child { margin-top: 0; }
.eeva-header { container-type: inline-size; }
.eeva-original-header {
    width: 760px;
    zoom: min(1, calc(100cqw / 760px));
    margin: 0 auto;
}
.eeva-original-header table { margin: 0; }
.eeva-original-header td { padding: 0; }
.eeva-original-header img { display: block; }

.eeva-front .eeva-content { padding: 10px 11px 16px; }
.eeva-front h1 {
    padding: 6px 0 9px;
    margin: 0 0 8px;
    font: bold 18px/1.35 Verdana, Arial, sans-serif;
}
.ad-card, .eeva-notices {
    font-family: Verdana, Geneva, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
}
.ad-card { color: var(--eeva-berry); font-size: 12px; line-height: 1.45; padding: 8px 0; }
.ad-card { --ad-text-inset: 8px; }
.ad-card > div:not(.ad-contact):not(.ad-date) { padding-inline: var(--ad-text-inset); }
.ad-description { margin: 4px 0; white-space: normal; }
.ad-contact, .ad-date { background: var(--eeva-ad-detail); padding: 5px var(--ad-text-inset, 8px); border-radius: 3px; }
.ad-contact { margin-top: 6px; border-radius: 3px 3px 0 0; }
.ad-date { margin-top: 4px; font-size: 11px; }
.ad-contact + .ad-date { margin-top: 0; border-radius: 0 0 3px 3px; }
.ad-pagination { justify-content: center; }
.ad-pagination:empty { display: none; }
.ad-pagination a { color: #fff; background: var(--eeva-berry); }
.ad-pagination a:hover { background: var(--eeva-deep); }

@media (max-width: 759px) {
    body:has(.eeva-front) .eeva-shell {
        width: 760px;
        margin: 0;
        border-radius: 0;
        zoom: var(--eeva-page-scale, 1);
    }
    .eeva-front { grid-template-columns: 140px minmax(0, 1fr) 150px; }
    .eeva-front .category-menu ul { display: block; }
    .eeva-front .category-menu li + li { border-top: 1px solid #b85960; }
    .eeva-home .eeva-side--home-menu > :not(.category-menu) { display: revert; }
}

.eeva-sms-button { display: none; }
@media (max-width: 759px), (hover: none) and (pointer: coarse) {
    .ad-contact .eeva-sms-button {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 44px;
        margin: 5px 0 2px;
        border-radius: 4px;
        background: var(--eeva-berry);
        color: #fff;
        font-weight: bold;
    }
    .eeva-front .ad-contact .eeva-sms-button {
        min-height: calc(44px / var(--eeva-page-scale, 1));
    }
}

.eeva-notice-guide { background: var(--eeva-blush); border-left: 3px solid var(--eeva-berry); }
.eeva-notice-guide p { border: 0; }
.eeva-notice-guide .eeva-notice-example { padding: 6px; background: var(--eeva-paper); border-radius: 3px; }

.eeva-notice-guide { margin: 6px 0; padding: 6px; border-radius: 3px; }
.eeva-notice-guide h3 { margin: 0; font-size: 12px; color: var(--eeva-deep); }

.eeva-information-page { background: var(--eeva-paper); padding: 17px 24px; }
.eeva-information-page h1 { font: bold 18px/1.35 Verdana, Arial, sans-serif; margin-bottom: 12px; }
.eeva-information { font: 13px/1.55 Verdana, Arial, sans-serif; overflow-wrap: anywhere; }
.eeva-information h2 { color: var(--eeva-deep); font-size: 13px; margin: 16px 0 4px; }
.eeva-information p { margin: 0 0 12px; }
.eeva-information a { color: var(--eeva-berry); text-decoration: underline; }
.eeva-contact-form { display: grid; gap: 12px; }
.eeva-contact-form label { display: grid; gap: 4px; font-weight: bold; }
.eeva-contact-form label span { font-weight: normal; }
.eeva-contact-form input:not([type="hidden"]), .eeva-contact-form textarea {
    box-sizing: border-box; width: 100%; padding: 8px;
    border: 1px solid var(--eeva-line); border-radius: 3px;
    background: #fff; color: var(--eeva-ink); font: inherit;
}
.eeva-contact-form textarea { resize: vertical; }
.eeva-contact-form button {
    justify-self: start; padding: 9px 14px; min-height: 44px; border: 0; border-radius: 3px;
    background: var(--eeva-berry); color: #fff; font: bold 13px Verdana, sans-serif; cursor: pointer;
}
.eeva-contact-form button:hover { background: var(--eeva-deep); }
.eeva-form-error { padding: 8px; background: var(--eeva-blush); color: var(--eeva-deep); }
@media (max-width: 640px) {
    .eeva-information-page { padding: 16px; }
    .eeva-contact-form input:not([type="hidden"]), .eeva-contact-form textarea { font-size: 16px; }
}

.ad-pagination a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 28px;
    font: bold 12px/1.3 Verdana, sans-serif;
}
.ad-arrow {
    position: relative;
    display: inline-block;
    width: 16px;
    height: 14px;
    color: var(--eeva-blush);
}
.ad-arrow::before, .ad-arrow::after { content: ""; position: absolute; }
.ad-arrow::before { left: 3px; right: 1px; top: 6px; border-top: 2px solid currentColor; }
.ad-arrow::after {
    right: 1px; top: 3px; width: 7px; height: 7px;
    border-top: 2px solid currentColor; border-right: 2px solid currentColor;
    transform: rotate(45deg);
}
.ad-arrow--prev { transform: rotate(180deg); }
@media (max-width: 759px) {
    .eeva-front .ad-pagination a { min-height: calc(44px / var(--eeva-page-scale, 1)); }
}

.ad-form-details { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 12px; }
.ad-form-fields { display: grid; gap: 9px; }
.eeva-ad-form select { width: 100%; padding: 8px; background: #fff; border: 1px solid var(--eeva-line); border-radius: 3px; font: inherit; }
.ad-card-photo { float: right; margin: 0 0 7px 10px; }
.ad-card-photo img { display: block; max-width: 100%; height: auto; border-radius: 3px; }
.ad-card { display: flow-root; }
@media (max-width: 480px) { .eeva-ad-form select { font-size: 16px; } }

.ad-file-field { font-weight: bold; }
.ad-file-row { display: flex; flex-wrap: wrap; align-items: center; gap: 5px 8px; margin-top: 4px; }
.eeva-ad-form .ad-file-picker {
    position: relative; display: inline-flex; align-items: center; min-height: 38px;
    padding: 0 10px; border-radius: 3px; background: var(--eeva-berry); color: #fff;
}
.eeva-ad-form .ad-file-picker span { font-weight: bold; }
.eeva-ad-form .ad-file-picker input { position: absolute; inset: 0; height: 100%; opacity: 0; cursor: pointer; }
.ad-file-picker:hover, .ad-file-picker:focus-within { outline: 2px solid var(--eeva-rose); outline-offset: 2px; }
.ad-file-name { font-weight: normal; overflow-wrap: anywhere; min-width: 0; }
.ad-file-mobile { display: none; }
.ad-form-preview { position: relative; width: 100px; height: 100px; border: 1px solid var(--eeva-line); border-radius: 3px; }
.ad-form-preview img { display: block; width: 100%; height: 100%; object-fit: cover; }
.eeva-ad-form .ad-form-preview button {
    position: absolute; top: 3px; right: 3px; min-height: 28px; min-width: 28px;
    padding: 0; font-size: 17px; line-height: 1;
}
@media (max-width: 640px), (pointer: coarse) {
    .ad-file-mobile { display: inline; }
    .ad-file-desktop { display: none; }
    .eeva-ad-form .ad-file-picker { min-height: 44px; }
}

.eeva-ad-form { color: var(--eeva-deep); }
.eeva-ad-form select,
.eeva-ad-form input:not([type="hidden"]),
.eeva-ad-form textarea { color: var(--eeva-berry); }

.eeva-ad-form select:focus,
.eeva-ad-form input:not([type="hidden"]):not([type="file"]):focus,
.eeva-ad-form textarea:focus {
    border-color: var(--eeva-berry);
    outline: 2px solid var(--eeva-berry);
    outline-offset: 1px;
}

.eeva-reading-menu {
    margin: 8px 0; padding: 7px;
    border-radius: 5px; background: var(--eeva-paper);
    font: 11px/1.4 Verdana, sans-serif;
}
.eeva-reading-menu h2 { margin: 0 0 3px; font-size: 13px; }
.eeva-reading-menu ul { margin: 0; padding: 0; list-style: none; }
.eeva-reading-menu li + li { border-top: 1px solid var(--eeva-line); }
.eeva-reading-menu a { display: block; padding: 5px 3px; color: var(--eeva-deep); overflow-wrap: anywhere; }
.eeva-reading-menu a:hover { background: var(--eeva-blush); text-decoration: none; }
.eeva-reading-menu .eeva-reading-image { padding: 0; margin-top: 6px; }
.eeva-reading-image img { display: block; margin: 0 auto; border-radius: 3px; }

.eeva-horoscope .eeva-content { font: 13px/1.55 Verdana, sans-serif; }
.eeva-horoscope h1 { margin-bottom: 4px; }
.horoscope-date, .horoscope-period { color: #6e484c; font-size: 11px; }
.horoscope-date { margin: 0 0 12px; }
.horoscope-sign {
    display: grid; grid-template-columns: clamp(64px, 21%, 96px) minmax(0, 1fr); gap: 12px;
    padding: 12px 0; border-top: 1px solid var(--eeva-line);
}
.horoscope-image-filters { position: absolute; }
.horoscope-illustration {
    display: block; width: 100%; height: auto; aspect-ratio: 96 / 108;
    align-self: start; overflow: hidden;
}
.horoscope-sign h2 { color: var(--eeva-deep); font-size: 15px; margin: 0; }
.horoscope-sign p { margin: 5px 0 0; overflow-wrap: anywhere; }

.eeva-gallery-card {
    box-sizing: border-box; width: 130px; max-width: 100%; margin: 8px auto;
    padding: 7px; background: var(--eeva-paper); border-radius: 5px;
    color: var(--eeva-deep); text-align: center; font: 11px/1.4 Verdana, sans-serif;
}
.eeva-gallery-card h2 { margin: 0 0 6px; font-size: 13px; text-align: left; }
.eeva-gallery-card a { display: block; color: var(--eeva-deep); }
.eeva-gallery-card img { display: block; width: 100%; height: auto; max-height: 165px; object-fit: contain; border-radius: 3px; }
.eeva-gallery-card span { display: block; margin-top: 5px; padding: 5px; background: var(--eeva-blush); border-radius: 3px; font-weight: bold; }
.eeva-gallery-card a:hover span { background: var(--eeva-berry); color: #fff; }

.ad-card:target { background: var(--eeva-blush); scroll-margin-top: 12px; }

.gallery-menu li a { display: flex; justify-content: space-between; align-items: baseline; gap: 5px; }
.gallery-menu-count { color: var(--eeva-blush); font-size: .9em; font-variant-numeric: tabular-nums; }

.listing-photo-dialog {
    overflow: visible;
    border: 0;
    background: #fff;
    padding: 10px;
    max-width: calc(100vw - 44px);
    max-height: calc(100dvh - 44px);
    box-sizing: border-box;
}
.listing-photo-dialog::backdrop { background: rgb(0 0 0 / 85%); }
.listing-photo-dialog img {
    display: block;
    max-width: calc(100vw - 64px);
    max-height: calc(100dvh - 64px);
    width: auto;
    height: auto;
}
.listing-photo-dialog button {
    position: absolute;
    top: -14px;
    right: -14px;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 2px solid #111;
    border-radius: 50%;
    background: #fff;
    color: #111;
    font: bold 25px/1 Arial, sans-serif;
    box-shadow: 0 2px 8px rgb(0 0 0 / 80%);
    cursor: pointer;
}
.listing-photo-dialog button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
html:has(.listing-photo-dialog[open]) { overflow: hidden; }

.listing-category-title {
    margin: 0 8px 10px;
    padding-top: 16px;
    color: var(--eeva-deep);
    font: 700 21px/1.2 "DM Sans", "Segoe UI", sans-serif;
}

.eeva-story-index .eeva-content { padding: 13px 16px; }
.eeva-story-index h1 { font: 700 21px/1.2 "DM Sans", "Segoe UI", sans-serif; }
.eeva-story-list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--eeva-ad-detail); }
.eeva-story-list li { padding: 10px 8px; border-bottom: 1px solid var(--eeva-ad-detail); }
.eeva-story-list li > a { display: block; color: var(--eeva-deep); font: 700 16px/1.3 "DM Sans", "Segoe UI", sans-serif; overflow-wrap: anywhere; }
.eeva-story-meta { display: flex; flex-wrap: wrap; gap: 3px 10px; margin-top: 4px; color: #6e484c; font: 11px/1.4 Verdana, sans-serif; }
.eeva-story-meta a { color: var(--eeva-berry); font: inherit; }
@media (max-width: 640px) {
    .eeva-story-index > .eeva-side:first-child { order: 1; }
    .eeva-story-index > .eeva-side:first-child > * { display: block; }
}

.gallery-content { background: var(--eeva-paper); }
.gallery-album-summary { margin: 0 8px 10px; color: #6e484c; font: 12px/1.4 Verdana, sans-serif; }
.gallery-albums { width: calc(100% - 16px); margin: 0 8px 13px; border-collapse: collapse; font: 13px/1.4 "DM Sans", "Segoe UI", sans-serif; }
.gallery-albums th { background: var(--eeva-ad-detail); color: var(--eeva-deep); text-align: left; }
.gallery-albums th, .gallery-albums td { padding: 7px 6px; border-bottom: 1px solid var(--eeva-ad-detail); }
.gallery-albums td:first-child { width: 100%; overflow-wrap: anywhere; }
.gallery-albums td:not(:first-child) { white-space: nowrap; color: #6e484c; }
.gallery-albums th:last-child, .gallery-albums td:last-child { text-align: right; }
.gallery-albums td a { color: var(--eeva-berry); font: 700 14px/1.3 "DM Sans", "Segoe UI", sans-serif; }
.gallery-albums tr:hover td { background: var(--eeva-blush); }

.eeva-position-guide { font: 13px/1.6 Verdana, sans-serif; overflow-wrap: anywhere; }
.position-guide-intro { margin: 0 0 16px; }
.position-guide-item { display: flow-root; border-top: 1px solid var(--eeva-ad-detail); padding: 14px 0; }
.position-guide-item h2 { margin: 0 0 9px; color: var(--eeva-deep); font: 700 18px/1.25 "DM Sans", "Segoe UI", sans-serif; }
.position-guide-item img { float: left; width: min(36%, 145px); height: auto; margin: 0 12px 7px 0; border-radius: 4px; }
.position-guide-item p { margin: 0 0 8px; }
.position-guide-item p:last-child { margin-bottom: 0; }
