:root{font-family:ui-rounded,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#483454;background:#d9c6ee;font-synthesis:none;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:280px}.home{min-height:100svh;padding:max(24px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));display:grid;place-items:center}.home-content{width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;gap:36px;transform:translateY(-4svh)}.headdress{width:clamp(168px,49vw,224px);height:auto;image-rendering:pixelated;filter:drop-shadow(0 8px 0 #48345412)}.search-form{width:100%;position:relative}.search-bar{display:flex;align-items:center;gap:8px;background:#fffaf3;border:2px solid #483454;border-radius:18px;padding:6px 6px 6px 18px;box-shadow:0 5px #483454;transition:box-shadow .15s}.search-bar:focus-within{outline:3px solid #fffaf3;outline-offset:5px}input{min-width:0;flex:1;border:0;outline:0;background:transparent;font:inherit;font-size:16px;color:#483454;height:44px}input::placeholder{color:#766080;opacity:1}button{flex-shrink:0;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:11px;background:#483454;color:#fffaf3;cursor:pointer}button:hover{background:#654b76}button:active{transform:translateY(1px)}button:focus-visible{outline:3px solid #b95a43;outline-offset:3px}button svg{width:24px;height:24px}.feedback{position:absolute;top:100%;width:100%;font-size:13px;line-height:1.6;text-align:center;margin:20px 0 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-height:500px){.home-content{transform:none;gap:16px}.headdress{width:120px}.feedback{position:static}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.home-content,.search-form{min-width:0}button:disabled{opacity:.5;cursor:wait}.result{background:#fffaf3;border:2px solid #483454;border-radius:18px;padding:24px;width:100%;box-shadow:0 5px #483454}.result p,.result li{line-height:1.6}.result h2{font-size:32px}.result h3{font-size:20px}.result summary{cursor:pointer;padding:12px 0}.again{width:100%;margin-top:20px;font:inherit;padding:12px;height:auto;min-height:44px}.home-content:has(.result){transform:none;padding-block:24px}.headdress{animation:cocar-enter .65s cubic-bezier(.16,1,.3,1) both;view-transition-name:cocar}.screen{view-transition-name:screen;animation:screen-enter .38s .12s ease-out both}.is-judging .headdress{animation:judging 1.3s ease-in-out infinite}.is-judging button svg{animation:arrow-pulse .9s ease-in-out infinite}@keyframes cocar-enter{0%{opacity:0;transform:translateY(-22px) scale(.86) rotate(-7deg)}70%{opacity:1;transform:translateY(3px) scale(1.03) rotate(2deg)}to{opacity:1;transform:none}}@keyframes screen-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes screen-out{to{opacity:0;transform:translateY(-10px)}}@keyframes judging{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-7px) rotate(2deg)}}@keyframes arrow-pulse{50%{opacity:.35;transform:translate(3px)}}::view-transition-old(screen){animation:screen-out .18s ease-in both}::view-transition-new(screen){animation:screen-enter .32s ease-out both}::view-transition-group(cocar){animation-duration:.35s}::view-transition-old(root),::view-transition-new(root){animation:none}.feather-score{display:flex;gap:8px}.score-feather{position:relative;display:block;width:28px;height:40px;animation:feather-pop .4s var(--feather-delay) ease-out both}.score-feather svg{display:block;width:100%;height:100%}.feather-fill{position:absolute;inset:0;clip-path:inset(var(--feather-empty) 0 0 0);animation:feather-fill .6s var(--feather-delay) cubic-bezier(.25,.8,.25,1) both}@keyframes feather-fill{0%{clip-path:inset(100% 0 0 0)}to{clip-path:inset(var(--feather-empty) 0 0 0)}}@keyframes feather-pop{0%{transform:translateY(4px)}to{transform:translateY(0)}}.pwa-notice{position:fixed;z-index:10;bottom:calc(max(12px,env(safe-area-inset-bottom)) + 40px);left:50%;transform:translate(-50%);width:calc(100% - 32px);max-width:420px;border:1px solid #483454;background:#fffaf3;box-shadow:0 4px #48345420;border-radius:14px;padding:8px 12px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:13px;line-height:1.5;animation:none}.pwa-notice p{margin:0 0 8px}.text-button{width:auto;min-height:44px;height:auto;padding:8px 12px;font:inherit}.dismiss{background:transparent;color:#483454;font-size:24px;width:44px;height:44px}.dismiss:hover{background:#e9def1}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}.smoke-signal{width:clamp(168px,49vw,224px);height:auto;image-rendering:pixelated;filter:drop-shadow(0 8px 0 #48345412);overflow:visible;animation:screen-enter .3s ease-out both}.signal-puff{opacity:0;transform-box:fill-box;transform-origin:center;animation:signal-puff 1.8s steps(9) infinite}.pipe-wisp{opacity:0;animation:pipe-wisp 1.8s steps(6) infinite}.fan{transform-box:fill-box;transform-origin:0 50%;animation:fan .6s steps(1) infinite}.flame-b{animation:flame .4s steps(1) infinite}.flame-a{animation:flame .4s steps(1) infinite reverse}@keyframes signal-puff{0%{opacity:0;transform:translateY(6px) scale(.5)}15%{opacity:1}80%{opacity:1}to{opacity:0;transform:translateY(-22px) scale(1.2)}}@keyframes pipe-wisp{0%{opacity:0;transform:translateY(2px)}30%{opacity:1}to{opacity:0;transform:translate(3px,-8px)}}@keyframes fan{50%{transform:translate(2px) scaleX(.75)}}@keyframes flame{50%{opacity:0}}@media(max-height:500px){.smoke-signal{width:120px}}.home{position:relative}.app-footer{position:absolute;left:0;right:0;bottom:max(8px,env(safe-area-inset-bottom));display:flex;justify-content:center}.footer-link{width:auto;height:auto;min-height:44px;padding:8px 12px;background:transparent;color:#483454;font:inherit;font-size:13px;text-decoration:underline;text-underline-offset:3px}.footer-link:hover{background:#e9def1}.safety-dialog{width:min(420px,calc(100% - 32px));border:2px solid #483454;border-radius:18px;padding:24px;background:#fffaf3;color:#483454;box-shadow:0 5px #483454}.safety-dialog::backdrop{background:#48345466}.safety-dialog h2{margin:0 0 12px;font-size:20px}.safety-dialog p,.safety-dialog li{font-size:15px;line-height:1.6}.safety-dialog ul{padding-left:20px;margin:12px 0 0}.safety-dialog li+li{margin-top:6px}
