/* Global interaction feedback; mentor composition lives in mentor-studio.css. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.site-header:after{content:"";position:absolute;left:0;bottom:-1px;width:var(--page-progress,0%);height:2px;background:#114ee8;pointer-events:none}
.service-action{margin-top:24px;font-size:12px!important;min-height:44px;color:#114ee8}
.button,.text-link,.icon-button,.gallery-controls button,.dialog-close,.qr-card>a,.poster-toolbar>a,.plan-tabs button,.faqs summary,.rate-details>summary,.profile-details summary,.mentor-choice,.mentor-pick{cursor:pointer}
button:disabled{cursor:default}
.button{transition:transform 180ms,box-shadow 180ms,background-color 180ms,border-color 180ms}
.button:hover{transform:translateY(-3px);box-shadow:inset 0 1px 0 #ffffff30,0 5px 0 #092a87,0 11px 22px #113a9729;background-color:#0734a7}
.button.light:hover{background-color:white;box-shadow:0 5px 0 #c3d4a6,0 11px 22px #092c7738}
.button:active{transform:translateY(2px);box-shadow:0 1px 0 #092a87}
.text-link{transition:color 180ms,border-color 180ms}
.text-link:hover{color:#114ee8;border-bottom-color:#114ee8}
.text-link:hover>.ui-icon{background:#114ee8;color:white;border-color:#114ee8;transform:translate(3px,-2px)}
.gallery-controls button:not(:disabled):hover,.icon-button:hover,.dialog-close:hover{background:#d7fa73;border-color:#9fbd74;color:#214c2f;transform:translateY(-2px);box-shadow:0 4px 0 #c2d697}
.site-header nav>a:hover{background:#e7efdc;color:#114ee8}
.site-header nav>a:after{content:"";position:absolute;left:15px;bottom:4px;height:2px;width:0;background:#114ee8;transition:width 180ms}
.site-header nav>a:hover:after{width:22px}
.faqs summary:hover,.rate-details>summary:hover{color:#114ee8}
.faqs summary:hover>.ui-icon,.rate-details>summary:hover .ui-icon{background:#d7fa73;border-color:#b0cb7c;color:#27532d}
.poster-status{font-size:13px;line-height:1.9;color:#5e7850;padding:20px;text-align:center}
.poster-status:empty{display:none}
.poster-loading #poster-image{opacity:0;min-height:400px}
.poster-error #poster-image{display:none}
@media(prefers-reduced-motion:reduce){.button:hover,.button:active,.icon-button:hover,.gallery-controls button:hover,.dialog-close:hover,.text-link:hover>.ui-icon{transform:none!important}}
