/* DEV45: responsive Version 2 enhancement, not a replacement for role authorization. */
html[data-teddy-visual="v2"]{--teddy-safe-bottom:env(safe-area-inset-bottom,0px);--teddy-safe-left:env(safe-area-inset-left,0px);--teddy-safe-right:env(safe-area-inset-right,0px)}
html[data-teddy-visual="v2"],html[data-teddy-visual="v2"] body{max-width:100%;min-width:0;overflow-x:clip}
html[data-teddy-visual="v2"] body{background-size:cover!important;background-position:center center!important}
html[data-teddy-visual="v2"] :is(main,article,section,header,footer,nav,aside,.panel,.card,.tile,.widget){min-width:0;max-width:100%}
html[data-teddy-visual="v2"] :is(img,video,canvas,svg,picture,iframe){max-width:100%;height:auto}
html[data-teddy-visual="v2"] :is(input,textarea,select){max-width:100%;box-sizing:border-box}
html[data-teddy-visual="v2"] :is(pre,code){overflow-wrap:anywhere}
html[data-teddy-visual="v2"] pre{white-space:pre-wrap;overflow-x:auto}
html[data-teddy-visual="v2"] :is(table){display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
html[data-teddy-visual="v2"] :is(button,.btn,[role="button"]){min-height:44px;max-width:100%;-webkit-tap-highlight-color:transparent}
html[data-teddy-visual="v2"] :is(.grid,.cards,.tiles,.dashboard-grid){min-width:0}
html[data-teddy-visual="v2"] :is(a,button,input,select,textarea){touch-action:manipulation}
html[data-teddy-visual="v2"] :is(button,.btn,[role="button"]):not(:disabled):active{filter:brightness(1.15)}
html[data-teddy-visual="v2"] :is(button,.btn,[role="button"])[aria-busy="true"]{cursor:progress}
html[data-teddy-visual="v2"] :is(button,.btn,[role="button"])[aria-busy="true"]::after{content:"";display:inline-block;vertical-align:middle;width:.7em;height:.7em;margin-inline-start:.45em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:teddy-dev45-spin 1s linear infinite}
@keyframes teddy-dev45-spin{to{transform:rotate(360deg)}}
@media(hover:hover) and (pointer:fine){html[data-teddy-visual="v2"] :is(button,.btn,[role="button"]):not(:disabled):not(.teddy-skin-button):hover{transform:translateY(-2px)} }
@media(max-width:1024px){
 html[data-teddy-visual="v2"] :is(.dashboard-grid,.cards,.tiles){grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
 html[data-teddy-visual="v2"] :is(main,.container,.content){padding-inline:clamp(10px,2.5vw,24px)}
}
@media(max-width:700px){
 html[data-teddy-visual="v2"] body{background-attachment:scroll!important}
 html[data-teddy-visual="v2"] :is(h1){font-size:clamp(1.4rem,6vw,2.2rem);line-height:1.15}
 html[data-teddy-visual="v2"] :is(h2){font-size:clamp(1.2rem,4.8vw,1.8rem)}
 html[data-teddy-visual="v2"] :is(.dashboard-grid,.cards,.tiles){grid-template-columns:minmax(0,1fr)}
 html[data-teddy-visual="v2"] :is(.toolbar,.actions,.button-row){flex-wrap:wrap;gap:8px}
 html[data-teddy-visual="v2"] :is(input,select,textarea){font-size:max(16px,1rem)}
 #teddy-skin-switch{bottom:calc(8px + var(--teddy-safe-bottom));right:calc(8px + var(--teddy-safe-right));max-width:min(230px,calc(100vw - 16px));font-size:12px}
}
@media(max-width:420px){html[data-teddy-visual="v2"] :is(.panel,.card,.widget){padding-inline:min(3vw,12px)} }
@media(orientation:landscape) and (max-height:500px){#teddy-skin-switch{padding:4px 8px;font-size:11px;bottom:4px}}
@media(prefers-reduced-motion:reduce){html[data-teddy-visual="v2"] *,html[data-teddy-visual="v2"] *::before,html[data-teddy-visual="v2"] *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
