/* Original character silhouette, tinted in CSS; the supplied PNG is unchanged. */
.cursor-parade{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:35;contain:layout paint;opacity:0;transition:opacity .3s}
.cursor-parade.is-moving{opacity:1}
.cursor-parade:not(.is-moving) .cursor-janchikkun{animation-play-state:paused}
.cursor-janchikkun{position:absolute;left:0;top:0;width:var(--guest-size,64px);aspect-ratio:1;opacity:.4;will-change:transform;pointer-events:none;background:linear-gradient(120deg,#7fbeb5 2%,#c59bc7 22%,#fff0bb 39%,#80c1d3 58%,#c6acd9 78%,#9ec9ad 96%);background-size:200% 200%;-webkit-mask:url('assets/janchikkun-original.png') center/contain no-repeat;mask:url('assets/janchikkun-original.png') center/contain no-repeat;animation:guest-nacre 6s ease-in-out infinite alternate}
@keyframes guest-nacre{to{background-position:100% 100%}}
@media(prefers-reduced-motion:reduce){.cursor-parade{display:none!important}}
@media(hover:none){.cursor-parade,#trail-toggle{display:none!important}}
.question-panel{margin:0 0 22px;font-size:15px;line-height:1.65;letter-spacing:0;color:var(--ink);text-shadow:none;-webkit-text-stroke:0}
.question-note{margin:0 0 15px;color:#646c5f;font-size:14px}
.question-panel label{display:block;font-size:14px;margin-bottom:6px}
.question-panel label span{font-size:12px;color:#7c8173}
.question-panel input,.question-panel textarea{display:block;width:100%;font:inherit;line-height:1.65;color:var(--ink);padding:11px 13px;border:1px solid #b6c2a8;border-radius:8px;background:#fffdf5e8;outline-offset:3px}
.question-panel input:focus-visible,.question-panel textarea:focus-visible{outline:2px solid var(--teal)}
.question-panel textarea{resize:vertical;min-height:110px;max-height:230px}
.question-panel .question-field{margin:0 0 12px}
.question-panel .question-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.question-count{font-size:11px;text-align:right;color:#79816e;margin:4px 0 10px}
.question-actions{display:flex;gap:15px;align-items:center;flex-wrap:wrap}
.question-submit,.question-public-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid #4c7e72;background:#4c7e72;color:#fffdf3;padding:10px 20px;border-radius:8px;font:inherit;cursor:pointer;text-decoration:none}
.question-submit:disabled{opacity:.65;cursor:wait}
.question-status{margin:0;flex:1;min-width:160px;font-size:13px;line-height:1.6;color:#3d7466}
.question-status[data-error=true]{color:#a14b3d}
.intro-card.is-question #card-copy{font-size:24px;line-height:1.6;margin-bottom:13px}
.intro-card.is-question h2{font-size:42px;margin-bottom:12px}
.intro-card.is-question .card-number{margin-top:15px}
.intro-card.is-question .card-inner{min-height:0;max-height:calc(100dvh - 112px);overflow:auto}
.intro-card.is-question .card-flower{top:90px}
body.is-mobile .intro-card.is-question .card-inner{padding:16px 20px;max-height:calc(100dvh - 88px)}
@media(max-width:900px){body.is-desktop .intro-card.is-question .card-inner{max-height:calc(100dvh - 88px)}}
body.is-mobile .intro-card.is-question h2{font-size:32px}
body.is-mobile .intro-card.is-question #card-copy{font-size:18px}
body.is-mobile .intro-card.is-question .card-flower{top:82px}
body.is-mobile .question-panel,body.is-mobile .question-note{font-size:12px}
body.is-mobile .question-panel input,body.is-mobile .question-panel textarea{font-size:16px;padding:8px 10px}
body.is-mobile .question-panel label{font-size:12px}
body.is-mobile .question-panel textarea{min-height:95px}
.is-obs .intro-card.is-question .card-inner{max-height:900px}
.is-obs .question-local{font-size:24px;line-height:1.8}
.is-obs .question-public-link{font-size:20px}
