/* r42: compact individual actions, never generic settings rows or room names.
   Deliberately after the native mobile/art sheets. All six material families
   keep their own source artwork, shared Gear and original action listeners. */
#sanctuary-view[data-hud42-compact]{--hud42-device-left:env(safe-area-inset-left,0px);--hud42-device-right:env(safe-area-inset-right,0px)}
#sanctuary-view[data-room-hub][data-hud-r38][data-hud42-compact][data-scene] :is(.room-hub-toolbar,.room-hub-options) button[data-hud42-compact=true]{box-sizing:border-box;position:relative;display:inline-flex;flex:0 0 48px;flex-direction:row;align-items:center;justify-content:center;gap:0;width:48px;min-width:48px;max-width:48px;height:48px;min-height:48px;max-height:48px;margin:0;padding:8px;overflow:hidden;touch-action:manipulation}
#sanctuary-view[data-hud42-compact] button[data-hud42-compact=true]>.room-hub-label{position:absolute!important;display:block!important;width:1px!important;min-width:0!important;height:1px!important;max-width:1px!important;margin:0!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;pointer-events:none!important}
#sanctuary-view[data-hud42-compact] button[data-hud42-compact=true]>.room-hub-icon{width:24px!important;height:24px!important;flex:0 0 24px;pointer-events:none}
#sanctuary-view[data-hud42-compact] button[data-hud42-compact=true]>.room-hub-bag-art{position:static;width:30px;height:28px;max-width:100%;object-fit:contain;pointer-events:none}
#sanctuary-view[data-hud42-compact] button[data-hud42-compact=true]::after{content:'';position:absolute;left:16px;right:16px;bottom:4px;height:3px;border-radius:2px;background:currentColor;opacity:0;pointer-events:none}
#sanctuary-view[data-hud42-compact] button[data-hud42-compact=true]:is([aria-pressed=true],[aria-expanded=true],[data-playing=true])::after{opacity:1}
#sanctuary-view[data-room-hub][data-hud-r38][data-hud-art-r39][data-hud-materials40=true][data-hud42-compact][data-scene] button[data-hud42-pressed=true]{box-shadow:inset 0 0 0 3px var(--hud38-accent)!important;outline:2px solid var(--hud38-ink)!important;outline-offset:-5px!important}
/* Fixed-sized well content cannot grow a hit target past its painted bounds.
   Named room selectors and the shared Gear retain their own native sizing. */
#sanctuary-view[data-room-hub][data-hud-r38][data-hud-art-r39][data-hud42-compact][data-scene]:not([data-mobile-r39=true]) .room-hub-toolbar{height:auto;min-height:72px;grid-template-columns:minmax(var(--hud42-start-min,88px),244px) minmax(var(--hud42-primary-min,0px),1fr) auto;gap:8px;padding-block:11px;padding-left:max(var(--hud42-cap-inset,69px),env(safe-area-inset-left));padding-right:max(var(--hud42-cap-inset,69px),env(safe-area-inset-right));align-items:center}
#sanctuary-view[data-room-hub][data-hud-r38][data-hud42-compact][data-scene]:not([data-mobile-r39=true]) :is(.room-hub-start,.room-hub-primary,.room-hub-end){gap:6px;min-width:0;max-width:100%;height:auto}
#sanctuary-view[data-hud42-compact]:not([data-mobile-r39=true]) .room-hub-primary{flex-wrap:wrap}
#sanctuary-view[data-hud42-compact]:not([data-mobile-r39=true]) .room-hub-end{flex-wrap:wrap}
#sanctuary-view[data-room-hub][data-hud-r38][data-hud-art-r39][data-hud42-compact][data-scene][data-hud42-layout=wrapped]:not([data-mobile-r39=true]) .room-hub-toolbar{grid-template-columns:minmax(var(--hud42-start-min,88px),1fr) auto}
#sanctuary-view[data-hud42-compact][data-hud42-layout=wrapped] .room-hub-start{grid-column:1;grid-row:1}
#sanctuary-view[data-hud42-compact][data-hud42-layout=wrapped] .room-hub-end{grid-column:2;grid-row:1}
#sanctuary-view[data-hud42-compact][data-hud42-layout=wrapped] .room-hub-primary{grid-column:1/-1;grid-row:2}
#sanctuary-view[data-room-hub][data-hud-r38][data-hud-art-r39][data-hud42-compact][data-scene][data-hud42-layout=stacked]:not([data-mobile-r39=true]) .room-hub-toolbar{grid-template-columns:minmax(0,1fr)}
#sanctuary-view[data-hud42-compact][data-hud42-layout=stacked] .room-hub-start{grid-column:1;grid-row:1}
#sanctuary-view[data-hud42-compact][data-hud42-layout=stacked] .room-hub-primary{grid-column:1;grid-row:2}
#sanctuary-view[data-hud42-compact][data-hud42-layout=stacked] .room-hub-end{grid-column:1;grid-row:3}
#sanctuary-view[data-room-hub][data-hud-r38][data-hud42-compact][data-scene]:not([data-mobile-r39=true]) .sanctuary-home-toggle{min-width:0;max-width:100%;overflow:hidden}
/* A separate fixed overlay escapes clipped wells/popups without affecting
   their paint, layout, pointer target or scroll width; JS clamps visualViewport. */
#sanctuary-view .sanctuary-hud-tooltip-r42{position:fixed;z-index:2147483000;box-sizing:border-box;display:block;width:max-content;margin:0;padding:8px 11px;border:1px solid var(--hud38-line,#d8c5a0);border-radius:5px;background:var(--hud38-base,#211d17);color:var(--hud38-ink,#fff0d7);box-shadow:0 3px 12px #0006;font:500 14px/1.4 system-ui,-apple-system,'Segoe UI',sans-serif;text-align:left;text-shadow:none;white-space:normal;overflow-wrap:anywhere;overflow:hidden;pointer-events:none;user-select:none}
#sanctuary-view .sanctuary-hud-tooltip-r42[hidden]{display:none!important}
/* The phone's understandable action text is untouched. Explore and return
   also get immediate touch feedback without relying on hover. */
#sanctuary-view[data-mobile-r39=true] :is(.sanctuary-mobile-expand39,.sanctuary-mobile-collapse39)[data-hud42-pressed=true]{outline:3px solid var(--hud38-ink);outline-offset:-4px;box-shadow:inset 0 0 0 6px var(--hud38-accent)}
@media(forced-colors:active){
 #sanctuary-view .sanctuary-hud-tooltip-r42{background:Canvas;color:CanvasText;border-color:CanvasText;box-shadow:none}
 #sanctuary-view[data-hud42-compact] button[data-hud42-compact=true]::after{background:ButtonText;forced-color-adjust:none}
 #sanctuary-view[data-hud42-compact] button[data-hud42-pressed=true]{outline:3px solid Highlight!important;outline-offset:-4px!important}
}
/* The room's measured camera inset is not the close-view header's height.
   Keep that independently owned rail at its original minimum after wrapping. */
#sanctuary-view[data-room-hub][data-hud-r38][data-hud42-compact][data-scene]:not([data-mobile-r39=true]) #sanctuary-window-view .sanctuary-window-head{min-height:72px}

/* r42b: stable everyday actions; isolated native fullscreen at the far right. */
#sanctuary-view[data-room-hub][data-hud-r38][data-hud42-compact][data-scene]:not([data-mobile-r39=true]) .room-hub-end{flex-wrap:nowrap;justify-content:flex-end}
#sanctuary-view[data-room-hub][data-hud-r38][data-hud42-compact][data-scene]:not([data-mobile-r39=true]) .room-hub-end>#sanctuary-fullscreen{margin-left:12px;flex:0 0 48px}
#sanctuary-view[data-hud42-compact] #sanctuary-fullscreen>svg:not(.hud39-material-art):not(.room-hub-material-art){width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;pointer-events:none}
#sanctuary-view[data-room-hub][data-hud-r38][data-hud42-compact][data-scene] .room-hub-toolbar .room-hub-more{box-sizing:border-box;width:48px;min-width:48px;max-width:48px;height:48px;min-height:48px;padding:8px}
#sanctuary-view[data-room-hub][data-hud-r38][data-hud42-compact][data-scene] .room-hub-toolbar .hud38-room-lights{position:relative;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;min-width:48px;max-width:48px;height:48px;min-height:48px;margin:0;padding:8px;gap:0;overflow:hidden;isolation:isolate;touch-action:manipulation}
#sanctuary-view[data-room-hub][data-hud-r38][data-hud42-compact][data-scene] .room-hub-toolbar .hud38-room-lights input[type=checkbox]{position:absolute;inset:0;z-index:2;opacity:0;display:block;width:48px;height:48px;min-width:48px;min-height:48px;margin:0;padding:0;cursor:pointer}
#sanctuary-view[data-hud42-compact] .room-hub-toolbar .hud38-lights-copy{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);pointer-events:none}
#sanctuary-view[data-hud42-compact] .room-hub-toolbar .hud38-room-lights>.room-hub-icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
#sanctuary-view[data-hud42-compact] .room-hub-toolbar .hud38-room-lights:focus-within{outline:3px solid var(--hud38-accent);outline-offset:2px}
#sanctuary-view[data-hud42-compact] .room-hub-toolbar .hud38-room-lights[data-on=true]::after{content:'';position:absolute;left:16px;right:16px;bottom:4px;height:3px;background:currentColor;pointer-events:none}
#sanctuary-view[data-hud42-compact] .room-hub-toolbar .hud38-room-lights[data-disabled=true]{opacity:.5;cursor:not-allowed}
#sanctuary-view[data-hud42-compact] .room-hub-toolbar .hud38-room-lights[data-hud-art-state=ready]{background:var(--hud38-well);border-color:transparent;color:var(--hub-ink)}
@media(forced-colors:active){#sanctuary-view[data-hud42-compact] .room-hub-toolbar .hud38-room-lights{background:Canvas;color:ButtonText;border-color:ButtonText}}
