/* 本文の上部・末尾と小型画面の固定CTAを分離して、位置の競合を避ける。 */
.appraisal-action{margin:0 0 21px;flex-shrink:0}
.cta-prompt{display:flex;justify-content:center;align-items:center;gap:11px;margin:0 0 9px;color:#f2dfa6;text-align:center;font-size:11px;line-height:1.5;font-weight:800;letter-spacing:.05em}
.cta-prompt:before,.cta-prompt:after{content:"";width:16px;height:1px;background:#d1b975}
.cta-prompt:before{transform:rotate(30deg)}.cta-prompt:after{transform:rotate(-30deg)}
.result .appraisal-hit{position:relative;inset:auto;transform:none;width:100%;max-width:none;margin:0;min-height:66px;overflow:hidden;isolation:isolate;box-shadow:inset 0 0 0 2px #ffffff28,0 4px 0 #027239,0 8px 24px #07bd4933;transition:filter .15s,box-shadow .15s,transform .15s;touch-action:manipulation}
.result .appraisal-hit svg,.result .appraisal-hit>span{position:relative;z-index:1}
.result .appraisal-hit:after{content:none}
.result .appraisal-hit:before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(108deg,transparent 25%,#ffffff70 47%,transparent 69%);transform:translateX(-150%);pointer-events:none}
.cta-chevron{position:absolute!important;right:14px;font:400 28px/1 Arial,sans-serif}
.result.is-active .appraisal-hit{animation:ctaTempt 5.5s 1s ease-in-out infinite}
.result.is-active .appraisal-hit:before{animation:ctaGleam 5.5s 1.8s ease-in-out infinite}
.result.is-active .cta-chevron{animation:ctaDirection 3s 1.1s ease-in-out infinite}
.result .appraisal-hit:focus-visible{animation-play-state:paused;outline:3px solid #fff4ba;outline-offset:5px;filter:brightness(1.08)}
.result .appraisal-hit:active{animation:none;transform:translateY(3px) scale(.985);box-shadow:inset 0 0 0 2px #ffffff28,0 1px 0 #027239;filter:brightness(.98)}
.appraisal-action .cta-help{margin:12px 0 0}
.photo-guide{margin-bottom:22px}
.appraisal-bottom{margin:23px 0 9px}
.appraisal-bottom .appraisal-hit{animation-delay:2.2s}
.appraisal-dock{display:none}
@keyframes ctaTempt{0%,16%,100%{transform:none}3%,9%{transform:translateX(-1.5px) rotate(-.55deg) scale(1.008)}6%,12%{transform:translateX(1.5px) rotate(.55deg) scale(1.008)}}
@keyframes ctaGleam{0%{transform:translateX(-150%)}20%,100%{transform:translateX(150%)}}
@keyframes ctaDirection{0%,55%,100%{transform:none}65%,85%{transform:translateX(3px)}75%{transform:translateX(1px)}}
@media(hover:hover){.result .appraisal-hit:hover{filter:brightness(1.1);box-shadow:inset 0 0 0 2px #ffffff45,0 4px 0 #027239,0 10px 30px #07bd4955}}
@media(max-height:740px){.appraisal-dock{display:block;position:fixed;z-index:25;left:50%;bottom:calc(14px + var(--sb));transform:translateX(-50%);width:calc(100% - 30px);max-width:432px;border-radius:50px;box-shadow:0 0 0 10px #041024f0,0 -12px 22px #041024}.appraisal-dock .appraisal-hit{min-height:61px}.appraisal-bottom{margin-bottom:12px}.result-shell{padding-bottom:calc(112px + var(--sb))}}
@media(max-width:350px){.result .appraisal-hit{min-height:60px;font-size:15px;gap:8px;padding-left:13px;padding-right:30px}.result .appraisal-hit svg{width:25px;height:25px}.cta-prompt{font-size:10px}}
@media(prefers-reduced-motion:reduce){.result .appraisal-hit,.result .appraisal-hit:before,.result .cta-chevron{animation:none!important;transition:none!important}}

/* クーポン注意書き：上部固定バーとクーポン券面の両方に出し、どこをスクショしても写るようにする。 */
.dock-notice{margin:3px 0 0;padding-top:4px;border-top:1px solid #c9a35866;display:flex;flex-direction:column;gap:1px;line-height:1.35;text-align:center}
.dock-notice b{font-size:clamp(11px,3.4vw,12px);white-space:nowrap;font-weight:900;color:#ffe28d;letter-spacing:.02em}
.dock-notice small{font-size:9.5px;font-weight:700;color:#f3ead2}
.expiry-dock.is-expired .dock-notice b{color:#d7dbe2}
.app[data-state="result"] .result-shell{padding-top:calc(112px + var(--st))}
.coupon-save-note strong{color:#ffe28d}
.coupon-terms{margin:12px 0 0;padding:10px 8px 0;border-top:1px dashed #f1d07480;display:flex;flex-direction:column;gap:3px;line-height:1.45}
.coupon-terms b{font-size:clamp(10.5px,3.4vw,13px);white-space:nowrap;font-weight:900;color:#ffe28d}
.coupon-terms small{font-size:10.5px;font-weight:700;color:#f5f0ff}
