:root {color-scheme: dark;--gold: #d99a36;--gold-soft: #b87e2d;--rose: #d66c82;--wine: #74233f;--ink: #080a09;--cream: #f4ead9;--muted: #cfc5b7;--stage-ratio: 1.5}* { box-sizing: border-box; }html, body { width: 100%; min-height: 100%; margin: 0; }body {overflow: hidden;background:radial-gradient(circle at 50% 30%, #1f1710 0, #090a09 44%, #030404 100%);font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}button, input { font: inherit; }button { -webkit-tap-highlight-color: transparent; }.viewport-shell {width: 100vw;height: 100vh;display: grid;place-items: center;overflow: hidden;background: #050606}.site-stage {position: relative;width: min(100vw, calc(100vh * var(--stage-ratio)));aspect-ratio: 3 / 2;flex: none;overflow: visible;transition: filter .45s ease, opacity .45s ease, transform .45s ease;box-shadow: 0 0 80px rgba(0,0,0,.72)}.site-stage.site-gated {filter: grayscale(.58) brightness(.25) blur(3.5px);transform: scale(.992);pointer-events: none;user-select: none}.site-art {position: absolute;inset: 0;width: 100%;height: 100%;object-fit: contain;display: block;user-select: none;pointer-events: none}.hotspot {position: absolute;left: calc(var(--x) * 1%);top: calc(var(--y) * 1%);width: calc(var(--w) * 1%);height: calc(var(--h) * 1%);padding: 0;border: 0;border-radius: .35rem;background: transparent;cursor: pointer;z-index: 5}.hotspot.top-layer { z-index: 7; }.hotspot:focus-visible {outline: 2px solid #f1c66f;outline-offset: -3px;background: rgba(238, 179, 72, .08)}@media (hover:hover) {body.dh .hotspot,.hotspot:hover[data-debug="true"] { background: rgba(255, 202, 100, .13); }}.search-control {position: absolute;left: 3.39%;top: 43.55%;width: 27.25%;height: 5.18%;z-index: 8}.search-control input {width: 100%;height: 100%;border: 1px solid transparent;border-radius: .32rem;padding: 0 3.8rem 0 1.4rem;outline: none;color: #ede4d9;caret-color: var(--rose);background: transparent;font-size: clamp(10px, 1.18vw, 18px);letter-spacing: .01em}.search-control.active input {border-color: #8d6727;background: rgba(5, 8, 8, .985);box-shadow: inset 0 0 20px rgba(0,0,0,.55), 0 0 0 1px rgba(0,0,0,.45)}.search-control.active input::placeholder { color: #bfb6aa; opacity: 1; }.search-glass {position: absolute;right: 5.8%;top: 50%;width: 4.9%;aspect-ratio: 1;translate: 0 -56%;border: max(1px, .13vw) solid var(--gold);border-radius: 50%;opacity: 0;pointer-events: none}.search-glass::after {content: "";position: absolute;width: 54%;height: max(1px, .13vw);right: -42%;bottom: -21%;background: var(--gold);rotate: 48deg;border-radius: 3px}.search-control.active .search-glass { opacity: 1; }.search-result-notice {position: absolute;left: 3.4%;top: 49.2%;z-index: 20;min-width: 27%;max-width: 38%;padding: .75em 1em;color: #eee5d8;background: rgba(8, 10, 9, .98);border: 1px solid rgba(217,154,54,.68);border-radius: .45rem;box-shadow: 0 15px 35px rgba(0,0,0,.55);font-size: clamp(8px, .86vw, 14px);line-height: 1.4}.search-result-notice strong { color: #e48196; font-family: Georgia, serif; }.age-gate {position: fixed;inset: 0;z-index: 1000;display: grid;place-items: center;padding: 2vh 2vw;background: rgba(0,0,0,.56);backdrop-filter: blur(2px);transition: opacity .4s ease, visibility .4s ease}.age-gate.dismissed { opacity: 0; visibility: hidden; pointer-events: none; }.age-card {position: relative;width: min(94vw, calc(94vh * 1240 / 1063));max-height: 94vh;aspect-ratio: 1240 / 1063;filter: drop-shadow(0 22px 45px rgba(0,0,0,.65));animation: gateIn .55s cubic-bezier(.2,.75,.2,1) both}.age-card img { width: 100%; height: 100%; display: block; object-fit: contain; }.age-enter-hotspot {position: absolute;left: 30.35%;top: 79.35%;width: 38.25%;height: 8.35%;border: 0;border-radius: 24px;background: transparent;cursor: pointer;appearance: none;-webkit-appearance: none;box-shadow: none}.age-enter-hotspot:focus-visible {outline: none;box-shadow: none}.age-enter-hotspot:hover { background: transparent; box-shadow: none; }@keyframes gateIn { from { opacity: 0; transform: translateY(14px) scale(.97); } }.dialog-overlay {position: fixed;inset: 0;z-index: 900;display: grid;place-items: center;padding: 1.25rem;background: rgba(0,0,0,.74);backdrop-filter: blur(7px) saturate(.7)}.dialog-overlay[hidden] { display: none; }.dialog-panel {position: relative;width: min(720px, 94vw);max-height: min(86vh, 850px);overflow: auto;color: #292018;background:radial-gradient(circle at 20% 10%, rgba(255,255,255,.7), transparent 34%),linear-gradient(135deg, rgba(255,255,255,.22), transparent 34%),#f4ead8;border: 2px solid #b98737;border-radius: 18px;box-shadow: 0 24px 70px rgba(0,0,0,.75), inset 0 0 0 5px rgba(164,112,35,.13);padding: 3.7rem 2.4rem 2.25rem;animation: dialogIn .25s ease-out both}.dialog-panel::before,.dialog-panel::after {content: "◆";position: absolute;top: 1.2rem;color: #b17d31;font-size: .8rem}.dialog-panel::before { left: 1.5rem; }.dialog-panel::after { right: 3.8rem; }@keyframes dialogIn { from { opacity: 0; transform: translateY(10px) scale(.98); } }.dialog-close {position: absolute;right: .85rem;top: .65rem;width: 2.35rem;height: 2.35rem;border: 0;border-radius: 50%;color: #f4dfad;background: #57203c;cursor: pointer;font-size: 1.55rem;line-height: 1}.dialog-icon {position: absolute;top: -1.75rem;left: 50%;translate: -50% 0;width: 5.15rem;height: 5.15rem;display: grid;place-items: center;border: 3px solid #c79a4d;border-radius: 50%;color: #f7d98b;background: radial-gradient(circle at 35% 25%, #a54d6c, #4c1733 72%);box-shadow: 0 8px 18px rgba(0,0,0,.35), inset 0 0 0 4px rgba(19,9,13,.25);font-size: 2.3rem}.dialog-panel h2 {margin: .5rem 0 1.45rem;color: #4c1734;text-align: center;font-family: Georgia, "Times New Roman", serif;font-size: clamp(1.75rem, 4vw, 3rem);font-weight: 600;line-height: 1.05}.dialog-body { font-size: clamp(.98rem, 2vw, 1.13rem); line-height: 1.62; }.dialog-body p { margin: .65rem 0; }.dialog-body strong, .dialog-body h3 { color: #5f2440; }.dialog-body h3 { margin: 1.25rem 0 .5rem; font-family: Georgia, serif; }.dialog-body ul { margin: .65rem 0 1rem; padding-left: 1.35rem; }.dialog-body li { margin: .35rem 0; }.dialog-body .muted { color: #796d61; }.dialog-body .center { text-align: center; }.dialog-body .big-result { font: 600 clamp(2rem, 7vw, 4.6rem)/1 Georgia, serif; color: #7b274b; }.dialog-body .quote,.dialog-body .message-card,.dialog-body .faq-item,.dialog-body .option-list {margin: .8rem 0;padding: .9rem 1rem;border: 1px solid rgba(164,112,35,.42);border-radius: .65rem;background: rgba(255,255,255,.32)}.dialog-body .quote { font-family: Georgia, serif; font-size: 1.08em; }.dialog-body .message-card strong { display: block; font-family: Georgia, serif; font-size: 1.2em; }.dialog-body .progress-line { min-height: 3.1rem; display: grid; place-items: center; text-align: center; font-family: Georgia, serif; color: #5c213d; font-size: 1.22rem; }.spinner {width: 3rem;height: 3rem;margin: .75rem auto 1.15rem;border: .32rem solid rgba(117,38,72,.18);border-top-color: #7d294d;border-right-color: #c59644;border-radius: 50%;animation: spin .85s linear infinite}@keyframes spin { to { rotate: 360deg; } }.option-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: .65rem; }.option-button {padding: .8rem .9rem;border: 1px solid #ad7b35;border-radius: .5rem;color: #3a2719;background: #fff9ec;cursor: pointer;text-align: left}.option-button:hover, .option-button.selected { color: #fff5dc; background: #722442; }.category-joke {margin:1rem 0 0;padding:.95rem 1rem;border:1px solid rgba(164,112,35,.48);border-radius:.65rem;color:#5f2440;background:rgba(255,249,236,.72);text-align:center;font-family:Georgia,"Times New Roman",serif;font-size:1.08em;line-height:1.55;white-space:pre-line}.category-joke[hidden]{display:none}.dialog-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: .75rem; margin-top: 1.6rem; }.dialog-button {min-width: 9rem;padding: .8rem 1.35rem;border: 2px solid #c49a53;border-radius: .48rem;color: #f6d990;background: linear-gradient(#7c2b50, #571b38);box-shadow: 0 4px 0 #3b1027;cursor: pointer;font-family: Georgia, serif;font-size: 1.05rem;letter-spacing: .05em;text-transform: uppercase}.dialog-button.secondary { color: #553321; background: #f8efdf; box-shadow: none; }.visually-hidden {position: absolute !important;width: 1px !important;height: 1px !important;padding: 0 !important;margin: -1px !important;overflow: hidden !important;clip: rect(0, 0, 0, 0) !important;white-space: nowrap !important;border: 0 !important}@media (max-aspect-ratio: 3/2) {.site-stage { width: 100vw; }}@media (max-width: 720px) {.dialog-panel { padding: 3.25rem 1.1rem 1.4rem; border-radius: 13px; }.dialog-icon { width: 4.25rem; height: 4.25rem; font-size: 1.85rem; }.option-grid { grid-template-columns: 1fr; }.age-card { width: 96vw; height: auto; }}.hs-01{--x:73.83;--y:2.05;--w:8.86;--h:5.37}.hs-02{--x:83.79;--y:2.05;--w:13.15;--h:5.37}.hs-03{--x:17.70;--y:9.08;--w:11.20;--h:4.69}.hs-04{--x:29.80;--y:9.08;--w:16.60;--h:4.69}.hs-05{--x:47.40;--y:9.08;--w:15.70;--h:4.69}.hs-06{--x:63.50;--y:9.08;--w:15.70;--h:4.69}.hs-07{--x:79.80;--y:9.08;--w:16.10;--h:4.69}.hs-08{--x:1.17;--y:14.45;--w:8.35;--h:4.79}.hs-09{--x:10.40;--y:14.45;--w:9.05;--h:4.79}.hs-10{--x:20.50;--y:14.45;--w:10.70;--h:4.79}.hs-11{--x:31.40;--y:14.45;--w:10.70;--h:4.79}.hs-12{--x:42.20;--y:14.45;--w:10.80;--h:4.79}.hs-13{--x:53.20;--y:14.45;--w:14.70;--h:4.79}.hs-14{--x:68.00;--y:14.45;--w:12.00;--h:4.79}.hs-15{--x:80.00;--y:14.45;--w:17.00;--h:4.79}.hs-16{--x:31.84;--y:43.55;--w:12.30;--h:5.18}.hs-17{--x:3.39;--y:52.34;--w:12.50;--h:4.30}.hs-18{--x:16.60;--y:52.34;--w:15.70;--h:4.30}.hs-19{--x:33.20;--y:52.34;--w:9.90;--h:4.30}.hs-20{--x:43.10;--y:52.34;--w:5.80;--h:4.30}.hs-21{--x:60.05;--y:56.74;--w:36.90;--h:18.00}.hs-22{--x:84.80;--y:69.35;--w:11.00;--h:4.30}.hs-23{--x:3.30;--y:72.85;--w:17.30;--h:7.30}.hs-24{--x:20.60;--y:72.85;--w:16.90;--h:7.30}.hs-25{--x:37.50;--y:72.85;--w:16.60;--h:7.30}.hs-26{--x:54.10;--y:72.85;--w:12.50;--h:7.30}.hs-27{--x:25.75;--y:85.10;--w:6.10;--h:2.20}.hs-28{--x:25.75;--y:87.75;--w:6.50;--h:2.20}.hs-29{--x:25.75;--y:90.35;--w:5.40;--h:2.20}.hs-30{--x:25.75;--y:93.00;--w:6.40;--h:2.20}.hs-31{--x:39.20;--y:85.10;--w:7.50;--h:2.20}.hs-32{--x:39.20;--y:87.75;--w:7.00;--h:2.20}.hs-33{--x:39.20;--y:90.35;--w:10.60;--h:2.20}.hs-34{--x:39.20;--y:93.00;--w:9.60;--h:2.20}.hs-35{--x:54.00;--y:85.10;--w:8.90;--h:2.20}.hs-36{--x:54.00;--y:87.75;--w:8.20;--h:2.20}.hs-37{--x:54.00;--y:90.35;--w:7.80;--h:2.20}.hs-38{--x:54.00;--y:93.00;--w:7.80;--h:2.20}.hs-39{--x:7.10;--y:91.20;--w:2.25;--h:3.40}.hs-40{--x:10.80;--y:91.20;--w:2.25;--h:3.40}.hs-41{--x:14.45;--y:91.20;--w:2.25;--h:3.40}.hs-42{--x:18.10;--y:91.20;--w:2.25;--h:3.40}
