/* Focus uses the same world materials as the app. Geometry belongs to the editor. */
#mha-familienkarte .mha-focus{--focus-ink:var(--ui-ink,var(--mha-ink));--focus-glass:var(--ui-surface,var(--mha-light));--focus-line:var(--ui-control-line,var(--mha-rule));--focus-atlas:var(--atlas-home,var(--mha-paper-image,none));position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:max(clamp(12px,2vw,28px),env(safe-area-inset-top)) max(clamp(12px,2vw,28px),env(safe-area-inset-right)) max(clamp(12px,2vw,28px),env(safe-area-inset-bottom)) max(clamp(12px,2vw,28px),env(safe-area-inset-left));box-sizing:border-box;border:0;color:var(--focus-ink);background:linear-gradient(var(--ui-canvas,transparent),var(--ui-canvas,transparent)),var(--focus-atlas) center/cover,var(--atlas-base,var(--ui-paper,var(--mha-paper)));overflow:auto;overscroll-behavior:none;font-family:var(--mha-font-body,Manrope,Arial,sans-serif);}
#mha-familienkarte .mha-focus[open]{display:flex;flex-direction:column;gap:12px}
#mha-familienkarte .mha-focus[data-background=kitchen]{--focus-atlas:var(--atlas-kitchen,var(--mha-paper-image,none))}
#mha-familienkarte .mha-focus[data-background=library]{--focus-atlas:var(--atlas-night,var(--mha-paper-image,none))}
#mha-familienkarte .mha-focus::backdrop{background:var(--ui-mobile,var(--mha-ink))}
#mha-familienkarte .mha-focus button,#mha-familienkarte .mha-focus select,#mha-familienkarte .mha-focus input{font:inherit;color:inherit}
#mha-familienkarte .mha-focus button{min-width:40px;min-height:40px;border:1px solid var(--focus-line);border-radius:var(--ui-radius,10px);background:var(--ui-control,var(--mha-light));padding:8px 14px;cursor:pointer}
#mha-familienkarte .mha-focus button:disabled{opacity:.38;cursor:default}
#mha-familienkarte .mha-focus :focus-visible{outline:3px solid var(--ui-focus,var(--mha-wine));outline-offset:3px}
#mha-familienkarte .mha-focus-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;padding:0 45px;touch-action:none}
#mha-familienkarte .mha-focus-header p{margin:0;font-size:12px;font-weight:650}
#mha-familienkarte .mha-focus-header p span{margin-left:12px;font-variant-numeric:tabular-nums}
#mha-familienkarte .mha-focus-header h1{font:400 clamp(25px,3vw,42px)/1.1 var(--mha-font-heading,'IM Fell English',Georgia,serif);margin:3px 0 0}
#mha-familienkarte .mha-focus-stage{display:flex;align-items:center;gap:12px;flex:1;min-height:360px;touch-action:pan-y}
#mha-familienkarte .mha-focus-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(12,minmax(0,1fr));gap:12px;align-self:stretch;flex:1;min-width:0;min-height:0;}
#mha-familienkarte .mha-focus .mha-focus-arrow{flex:0 0 38px;width:38px;min-width:38px;height:72px;padding:0;border-radius:24px;font:40px/1 Georgia,serif;background:var(--ui-control,var(--mha-light));backdrop-filter:blur(10px);box-shadow:inset 0 1px var(--ui-highlight,transparent),0 4px 20px var(--ui-primary-shadow,transparent)}
#mha-familienkarte .mha-focus-widget{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;position:relative;border:0;border-radius:var(--ui-panel-radius,16px);background:var(--focus-glass);backdrop-filter:blur(9px);box-shadow:none;touch-action:pan-y}
#mha-familienkarte .mha-focus-widget>header{display:flex;align-items:center;gap:6px;padding:12px 18px 6px;flex:none}
#mha-familienkarte .mha-focus-widget>header h2{flex:1;margin:0;font:400 22px/1.15 var(--mha-font-heading,'IM Fell English',Georgia,serif)}
#mha-familienkarte .mha-focus-widget-body{flex:1;min-height:0;min-width:0;overflow:auto;padding:8px 18px 18px;overscroll-behavior:contain;touch-action:pan-y}
#mha-familienkarte .mha-focus-widget[data-widget-type=room]>.mha-focus-widget-body{padding:0;overflow:hidden}
#mha-familienkarte .mha-focus-widget[data-widget-type=room]{background:transparent;backdrop-filter:none;border-radius:0}
#mha-familienkarte .mha-focus-footer{text-align:center;flex:none;touch-action:none;align-self:center;max-width:100%;padding:3px 20px 7px;border-radius:var(--ui-radius,10px);background:var(--focus-glass);backdrop-filter:blur(7px)}
#mha-familienkarte .mha-focus-footer p{margin:3px 0;font-size:11px}
#mha-familienkarte .mha-focus-footer .mha-focus-swipe{font-size:12px;min-height:30px;display:grid;place-content:center}
#mha-familienkarte .mha-focus-swipe span{display:none}
@media(hover:hover){#mha-familienkarte .mha-focus-swipe span{display:inline}}
#mha-familienkarte [data-focus-dots]{display:flex;justify-content:center;gap:4px}
#mha-familienkarte [data-focus-dots] button{border:0;background:transparent;min-height:24px;min-width:28px;padding:5px}
#mha-familienkarte [data-focus-dots] span{display:block;width:7px;height:7px;border-radius:50%;background:var(--ui-muted,var(--mha-muted))}
#mha-familienkarte [data-focus-dots] [aria-current] span{width:22px;border-radius:6px;background:var(--ui-accent,var(--mha-wine))}
#mha-familienkarte .mha-focus-settings{display:flex;gap:12px;align-items:end;flex-wrap:wrap;background:var(--focus-glass);border-radius:var(--ui-radius,10px);padding:12px;margin:0 50px}
#mha-familienkarte .mha-focus-settings[hidden],#mha-familienkarte .mha-focus-catalog[hidden]{display:none}
#mha-familienkarte .mha-focus-settings label{display:grid;gap:4px;font-size:12px}
#mha-familienkarte .mha-focus-settings input:not([type=checkbox]),#mha-familienkarte .mha-focus-settings select{width:auto;max-width:190px;border:1px solid var(--focus-line);border-radius:var(--ui-radius,10px);padding:8px;background:var(--ui-input,var(--mha-light))}
#mha-familienkarte .mha-focus-settings .focus-check{display:flex;align-items:center;min-height:40px;gap:6px}
#mha-familienkarte .mha-focus-catalog{margin:0 50px;background:var(--ui-popover,var(--mha-light));padding:12px;border:1px solid var(--focus-line);border-radius:var(--ui-radius,10px)}
#mha-familienkarte .mha-focus-catalog summary{cursor:pointer;font-weight:650}
#mha-familienkarte .mha-focus-catalog summary span{font-weight:400;font-size:12px;margin-left:12px}
#mha-familienkarte .mha-focus-catalog>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;margin-top:12px}
#mha-familienkarte .mha-focus-catalog button{text-align:left}
#mha-familienkarte .mha-focus-catalog strong,#mha-familienkarte .mha-focus-catalog small{display:block}
#mha-familienkarte .mha-focus-catalog small{font-size:11px;font-weight:400;margin-top:4px;line-height:1.5}
#mha-familienkarte .mha-focus-catalog p{font-size:12px;margin-bottom:0}
#mha-familienkarte .mha-focus-empty{grid-area:1/1/-1/-1;display:grid;align-content:center;text-align:center;background:var(--focus-glass);border-radius:var(--ui-panel-radius,16px);padding:25px}
#mha-familienkarte .mha-focus-empty h2{font:32px var(--mha-font-heading,'IM Fell English',Georgia,serif)}
#mha-familienkarte .focus-move{cursor:grab;touch-action:none}
#mha-familienkarte .mha-focus .focus-resize{position:absolute;right:2px;bottom:2px;cursor:nwse-resize;touch-action:none;border-radius:8px 0 9px 0;min-height:32px;min-width:32px;padding:4px;z-index:2}
#mha-familienkarte .mha-focus[data-editing=true] .mha-focus-widget{outline:1px dashed var(--ui-accent,var(--mha-wine))}
#mha-familienkarte .mha-focus[data-editing=true] .mha-focus-widget[data-widget-type=room]{background:var(--ui-canvas,transparent);border-radius:var(--ui-panel-radius,16px)}
#mha-familienkarte .mha-focus[data-dragging=true]{user-select:none}
#mha-familienkarte .mha-focus[data-editing=true] .mha-focus-stage{min-height:480px}
#mha-familienkarte .mha-focus .room3d-workspace.is-embedded{height:100%;min-height:0;display:block}
#mha-familienkarte .mha-focus .room3d-main{height:100%;min-height:0;display:flex;flex-direction:column;position:relative;top:auto}
#mha-familienkarte .mha-focus .room3d-stage{flex:1;min-height:0;height:auto}
#mha-familienkarte .mha-focus .room3d-canvas{flex:1;height:100%;min-height:0;background:transparent;border:0;border-radius:0;box-shadow:none}
#mha-familienkarte .mha-focus .room3d-toolbar{flex:none}
#mha-familienkarte .mha-focus .room3d-canvas canvas{touch-action:none}
@media(max-width:699px){
  #mha-familienkarte .mha-focus{padding:max(12px,env(safe-area-inset-top)) max(6px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));gap:8px}
  #mha-familienkarte .mha-focus-header{padding:0 8px}
  #mha-familienkarte .mha-focus-stage{gap:5px;min-height:0;align-items:stretch}
  #mha-familienkarte .mha-focus .mha-focus-arrow{flex-basis:28px;min-width:28px;width:28px;height:64px;align-self:center}
  #mha-familienkarte .mha-focus-grid{display:flex;flex-direction:column;overflow:auto;touch-action:pan-y;overscroll-behavior:contain;gap:10px}
  #mha-familienkarte .mha-focus-widget{flex:none;min-height:260px;height:calc(var(--focus-widget-height,6)*38px)}
  #mha-familienkarte .mha-focus-widget[data-widget-type=room]{height:100%;min-height:300px}
  #mha-familienkarte .mha-focus-widget>header{padding:10px 12px 4px}
  #mha-familienkarte .mha-focus-widget>header h2{font-size:20px}
  #mha-familienkarte .mha-focus-widget-body{padding:6px 12px 12px}
  #mha-familienkarte .mha-focus-settings,#mha-familienkarte .mha-focus-catalog{margin:0 8px;flex:none}
  #mha-familienkarte .mha-focus-settings{gap:8px}
  #mha-familienkarte .mha-focus[data-editing=true] .mha-focus-grid{overflow:visible}
  #mha-familienkarte .mha-focus[data-editing=true] .mha-focus-stage{flex:none}
  #mha-familienkarte .mha-focus-catalog summary span{display:none}
}
@media(prefers-reduced-motion:reduce){#mha-familienkarte .mha-focus *{animation:none!important;scroll-behavior:auto!important}}
