:root{--hwv-font:Manrope,Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;--z-content:10;--z-attribution:20;--z-bottom-nav:40;--z-controls:50;--z-control-menu:55;--z-detail-backdrop:100;--z-detail:110;--z-detail-popover:120;--z-dialog-backdrop:200;--z-dialog:210;--z-dialog-popover:220;--z-status:240;font-family:var(--hwv-font)}
html,body,button,input,select,textarea{font-family:var(--hwv-font)}body{font-size:16px;line-height:1.5}h1{font-size:clamp(40px,5vw,72px);line-height:1.04;font-weight:600}h2{font-size:clamp(24px,2.4vw,34px);line-height:1.15;font-weight:600}h3{font-size:clamp(18px,2vw,22px);line-height:1.25;font-weight:600}.eyebrow,.kicker{font-size:12px!important;line-height:1.3;font-weight:600!important;letter-spacing:.1em}.caption,.project-scene-attribution{font-size:12px!important;line-height:1.35}button,.button,.signet-portal{font-size:14px;line-height:1.2;font-weight:600}
.persistent-navigation{z-index:var(--z-bottom-nav)!important}.persistent-display-controls,.global-controls{position:fixed!important;z-index:var(--z-controls)!important;top:16px!important;right:16px!important;left:auto!important;display:flex!important;gap:8px!important;align-items:flex-start!important;pointer-events:auto}.image-world{position:relative}.image-world-button,.persistent-display-controls>.ambiance-switch,.persistent-display-controls>.theme-switch{min-height:44px;border:1px solid color-mix(in oklab,currentColor 24%,transparent);border-radius:999px;padding:0 14px;background:color-mix(in oklab,var(--panel,#fff) 88%,transparent);color:inherit;backdrop-filter:blur(14px)}.image-world-button{display:flex;align-items:center;gap:8px;max-width:230px}.image-world-menu{position:absolute;z-index:var(--z-control-menu);top:calc(100% + 8px);right:0;width:min(320px,calc(100vw - 24px));padding:7px;border:1px solid color-mix(in oklab,currentColor 20%,transparent);border-radius:15px;background:var(--panel,#fff);box-shadow:0 18px 48px #0004}.image-world-option{display:block;width:100%;min-height:44px;padding:10px 12px;border:0;border-radius:10px;background:transparent;color:inherit;text-align:left}.image-world-option:hover,.image-world-option:focus-visible{background:var(--soft,#e7edef)}.image-world-autoplay{margin-top:5px;border-top:1px solid color-mix(in oklab,currentColor 16%,transparent);border-radius:0 0 10px 10px}.image-world-option:disabled{opacity:.6;cursor:not-allowed}
/* Scrolling surfaces start below the fixed display controls, including wrapped controls. */
.has-central-navigation{--display-safe-top:80px}
.has-central-navigation>.main-shell,.has-central-navigation>.dashboard-shell{margin-top:var(--display-safe-top)!important;height:calc(100svh - var(--dock-height) - var(--display-safe-top))!important;overflow:auto}
.has-central-navigation.unified-landing #hwv.setup-sky{margin-top:var(--display-safe-top)!important;height:calc(100svh - var(--dock-height) - var(--display-safe-top))!important;padding-top:12px!important}
.hwv-dialog-backdrop{position:fixed;z-index:var(--z-dialog-backdrop);inset:0;background:#071014a8;backdrop-filter:blur(6px)}.hwv-dialog{position:fixed;z-index:var(--z-dialog);inset:50% auto auto 50%;width:min(520px,calc(100% - 24px));max-height:calc(100dvh - 24px);overflow:auto;transform:translate(-50%,-50%);border:1px solid var(--line,#ccd4d5);border-radius:24px;background:var(--panel,#fffefa);color:var(--ink,#172226);box-shadow:0 30px 90px #0008}.hwv-dialog>div{display:grid;min-height:0;padding:clamp(20px,4vw,30px);gap:18px}.hwv-dialog h2{margin:0;overflow-wrap:anywhere}.hwv-dialog header p{margin:8px 0 0;color:var(--muted,#5f6e73)}.hwv-dialog-body{display:grid;gap:14px;min-height:0;overflow:auto}.hwv-dialog-actions{position:sticky;bottom:0;display:flex;justify-content:flex-end;gap:10px;padding-top:14px;background:var(--panel,#fffefa)}.hwv-dialog-actions button{min-height:44px;padding:10px 16px;border-radius:12px}.hwv-dialog-primary{border:0;background:var(--acid,#a5cc28);color:#111608}.hwv-dialog-secondary{border:1px solid var(--line,#ccd4d5);background:transparent;color:inherit}.hwv-dialog-danger{border:1px solid color-mix(in oklab,var(--bad,#b53d37) 55%,var(--line,#ccd4d5));background:color-mix(in oklab,var(--bad,#b53d37) 14%,var(--panel,#fff));color:var(--bad,#b53d37)}.hwv-dialog-status{min-height:1.5em;margin:0;color:var(--bad,#b53d37)}.hwv-dialog label{display:grid;gap:6px}.hwv-dialog input:not([type="checkbox"]):not([type="radio"]){min-height:44px;padding:9px 11px;border:1px solid var(--line,#ccd4d5);border-radius:10px;background:var(--soft,#eef2f2);color:inherit}.hwv-modal-open>:not(.hwv-dialog):not(.hwv-dialog-backdrop){pointer-events:none}.hwv-detail-open .persistent-display-controls,.hwv-detail-open .global-portals{visibility:hidden;pointer-events:none}
.flyover-shade{z-index:var(--z-detail-backdrop)!important}.flyover{z-index:var(--z-detail)!important}.flyover>*{position:relative;z-index:var(--z-detail-popover)}.project-scene-attribution{z-index:var(--z-attribution)!important}.toast,.success-pop{z-index:var(--z-status)!important}
@media(max-width:680px){.persistent-display-controls,.global-controls{top:12px!important;right:12px!important;max-width:calc(100vw - 24px);flex-wrap:wrap;justify-content:flex-end}.image-world{order:3}.image-world-button{max-width:190px}.hwv-dialog{inset:auto 12px 12px;width:calc(100% - 24px);max-height:calc(100dvh - 24px);transform:none;border-radius:22px}.hwv-dialog-actions{padding-bottom:max(0px,env(safe-area-inset-bottom))}.flyover{inset:0!important;width:100vw!important;height:100dvh!important;max-height:none!important;border-radius:0!important}}
/* Native date controls and custom date fields follow the chosen app theme. */
body[data-theme="light"]{color-scheme:light}body[data-theme="dark"]{color-scheme:dark}
.short-date-control{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:7px;width:100%;min-width:0}
.short-date-display{width:100%;min-width:0;min-height:48px;padding:9px 11px;border:1px solid var(--line,#ccd4d5);border-radius:10px;background:var(--soft,#eef2f2);color:var(--ink,#172226)}
.short-date-open{display:grid;min-height:48px;padding:0;place-items:center;border:1px solid var(--line,#ccd4d5);border-radius:12px;background:var(--soft,#eef2f2);color:var(--ink,#172226);font-size:17px}
.short-date-open:hover,.short-date-open:focus-visible{border-color:var(--blue,#475cc9)}
.short-date-native{position:absolute!important;width:1px!important;height:1px!important;inset:auto 0 0 auto!important;padding:0!important;border:0!important;opacity:0!important;pointer-events:none!important}
.hwv-dialog label:has(>input:is([type="checkbox"],[type="radio"])){display:flex;align-items:center;gap:10px}
.hwv-dialog input:is([type="checkbox"],[type="radio"]){flex:0 0 20px;width:20px;height:20px;min-height:0;padding:0;margin:0;accent-color:var(--acid,#a5cc28)}
@media(prefers-reduced-motion:reduce){.image-world-no-transition *{transition:none!important}.hwv-dialog{scroll-behavior:auto}}
.hwv-quota-control{position:fixed;z-index:var(--z-controls);right:18px;bottom:18px;color:var(--ink,#172226)}.hwv-quota-button{width:58px;height:58px;border:1px solid color-mix(in oklab,var(--ink,#172226) 22%,transparent);border-radius:50%;background:radial-gradient(circle closest-side,var(--panel,#fffefa) 78%,transparent 80% 99%),conic-gradient(var(--acid,#a5cc28) var(--quota),color-mix(in oklab,var(--ink,#172226) 10%,transparent) 0);color:inherit;box-shadow:0 10px 35px #08141933;backdrop-filter:blur(14px);font-size:15px}.hwv-quota-shade{position:fixed;z-index:var(--z-detail-backdrop);inset:0;background:#07101475;backdrop-filter:blur(5px)}.hwv-quota-panel{position:fixed;z-index:var(--z-detail);top:0;right:0;width:min(490px,100vw);height:100dvh;border-left:1px solid var(--line,#ccd4d5);background:color-mix(in oklab,var(--panel,#fffefa) 94%,transparent);color:var(--ink,#172226);box-shadow:-25px 0 80px #0005;backdrop-filter:blur(24px)}.hwv-quota-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:24px 24px 16px;border-bottom:1px solid var(--line,#ccd4d5)}.hwv-quota-panel h2,.hwv-quota-panel h3,.hwv-quota-panel p{margin-top:0}.hwv-quota-panel h2{margin-bottom:0}.hwv-quota-close{width:44px;height:44px;border:1px solid var(--line,#ccd4d5);border-radius:14px;background:var(--soft,#eef2f2);color:inherit;font-size:24px}.hwv-quota-scroll{height:calc(100dvh - 102px);overflow:auto;padding:22px 24px 40px}.hwv-quota-current{padding:14px 16px;border-radius:14px;background:var(--soft,#eef2f2);font-weight:700}.hwv-billing-period,.hwv-billing-state,.hwv-billing-feedback{min-height:1.4em;color:var(--muted,#5f6e73)}.hwv-billing-feedback{font-weight:650}.hwv-billing-refresh{min-height:44px;margin:0 0 12px;border:1px solid var(--line,#ccd4d5);border-radius:11px;padding:8px 12px;background:var(--soft,#eef2f2);color:inherit}.hwv-pending-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 12px}.hwv-pending-actions button{min-height:44px;border:1px solid var(--line,#ccd4d5);border-radius:11px;padding:8px 12px;background:var(--soft,#eef2f2);color:inherit}.hwv-sandbox-notice{padding:8px 10px;border:1px dashed var(--line,#ccd4d5);border-radius:10px;font-size:.86rem}.hwv-tier-grid{display:grid;gap:10px}.hwv-tier-grid article{display:grid;gap:8px;padding:16px;border:1px solid var(--line,#ccd4d5);border-radius:16px;background:color-mix(in oklab,var(--panel,#fffefa) 82%,transparent)}.hwv-tier-grid article.is-current{border-color:var(--acid,#a5cc28);box-shadow:inset 4px 0 var(--acid,#a5cc28)}.hwv-tier-grid p,.hwv-tier-grid strong{margin:0}.hwv-tier-grid small{font-weight:500}.hwv-tier-grid button,.hwv-subscription-cancel{min-height:44px;border:1px solid var(--line,#ccd4d5);border-radius:11px;background:var(--soft,#eef2f2);color:inherit}.hwv-tier-grid button:disabled{opacity:.72}.hwv-subscription-cancel{width:100%;margin-top:12px}.hwv-code-section{margin-top:24px;padding-top:22px;border-top:1px solid var(--line,#ccd4d5)}.hwv-code-section details{margin:12px 0 16px}.hwv-code-section summary{cursor:pointer;font-weight:700}.hwv-code-section form,.hwv-code-section label{display:grid;gap:7px}.hwv-code-section input{min-height:46px;padding:10px 12px;border:1px solid var(--line,#ccd4d5);border-radius:11px;background:var(--soft,#eef2f2);color:inherit;text-transform:uppercase}.hwv-code-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}.hwv-code-actions button,.hwv-qr-file{display:flex;min-height:44px;align-items:center;justify-content:center;border:1px solid var(--line,#ccd4d5);border-radius:11px;padding:8px 10px;background:var(--soft,#eef2f2);color:inherit;text-align:center}.hwv-code-actions button{border-color:var(--acid,#a5cc28);background:var(--acid,#a5cc28);color:#111608}.hwv-code-status{min-height:3em;margin:8px 0 0;color:var(--muted,#5f6e73)}.hwv-quota-open>:not(.hwv-quota-control){pointer-events:none}
@media(max-width:680px){.hwv-quota-control{right:12px;bottom:86px}.hwv-quota-panel{top:auto;bottom:0;width:100vw;height:min(88dvh,760px);border-top:1px solid var(--line,#ccd4d5);border-left:0;border-radius:24px 24px 0 0}.hwv-quota-scroll{height:calc(min(88dvh,760px) - 102px);padding-bottom:max(32px,env(safe-area-inset-bottom))}.hwv-code-actions{grid-template-columns:1fr}}
:scope.persistent-navigation{z-index:var(--z-bottom-nav)!important}
.window-controller{position:fixed;z-index:var(--z-controls);right:86px;bottom:27px;width:248px;color:var(--ink,#172226)}.window-controller-track{position:relative;height:24px;border-radius:99px;background:color-mix(in oklab,var(--ink,#172226) 10%,transparent);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--ink,#172226) 16%,transparent);backdrop-filter:blur(14px)}.window-controller-track::before,.window-controller-track::after{content:"";position:absolute;top:8px;width:1px;height:8px;background:currentColor;opacity:.32}.window-controller-track::before{left:50%}.window-controller-track::after{right:2px}.window-controller-capsule{position:absolute;top:3px;min-width:0;height:18px;border-radius:99px;background:var(--acid,#a5cc28);color:#111608;cursor:grab;touch-action:none}.window-controller-capsule:active{cursor:grabbing}.window-controller-capsule:focus-visible{outline:2px solid currentColor;outline-offset:3px}.window-controller-edge{position:absolute;top:2px;width:9px;height:14px;border-radius:99px;background:#11160855;cursor:ew-resize}.window-controller-edge:focus-visible{outline:2px solid currentColor;outline-offset:2px}.window-controller-edge.is-left{left:3px}.window-controller-edge.is-right{right:3px}.window-controller-live{position:absolute;right:0;bottom:calc(100% + 7px);width:max-content;max-width:248px;padding:4px 7px;border-radius:7px;background:color-mix(in oklab,var(--panel,#fffefa) 94%,transparent);box-shadow:0 6px 18px #0814192b;color:var(--muted,#5f6e73);font-size:10px;opacity:0;pointer-events:none;transform:translateY(3px);transition:opacity .14s ease,transform .14s ease}.window-controller:focus-within .window-controller-live,.window-controller.is-interacting .window-controller-live{opacity:1;transform:none}@media(max-width:900px){.window-controller{display:none}}

/* HWV-237: Bildwelt bleibt als unaufdringliches Symbol erreichbar. */
.dashboard-master-navigation .image-world-button,
.workspace-master-navigation .image-world-button { width:44px; max-width:44px; padding:0; justify-content:center; }
.dashboard-master-navigation .image-world-button [data-image-world-value],
.workspace-master-navigation .image-world-button [data-image-world-value] { display:none; }

/* HWV-238: Scrollen bleibt vollständig nativ; Leisten weichen Kantenhinweisen. */
[data-scroll-surface],.scroll-hint{scrollbar-width:none;-ms-overflow-style:none}[data-scroll-surface]::-webkit-scrollbar,.scroll-hint::-webkit-scrollbar{display:none;width:0;height:0}.scroll-hint{--scroll-fade:color-mix(in oklab,var(--panel,#fffefa) 88%,transparent)}.scroll-hint[data-scroll-x="start"]{box-shadow:inset -18px 0 16px -16px var(--scroll-fade)}.scroll-hint[data-scroll-x="middle"]{box-shadow:inset 18px 0 16px -16px var(--scroll-fade),inset -18px 0 16px -16px var(--scroll-fade)}.scroll-hint[data-scroll-x="end"]{box-shadow:inset 18px 0 16px -16px var(--scroll-fade)}.flyover.scroll-hint[data-scroll-y="start"]{box-shadow:inset 0 -16px 16px -16px var(--scroll-fade),-28px 0 70px #0009}.flyover.scroll-hint[data-scroll-y="middle"]{box-shadow:inset 0 16px 16px -16px var(--scroll-fade),inset 0 -16px 16px -16px var(--scroll-fade),-28px 0 70px #0009}.flyover.scroll-hint[data-scroll-y="end"]{box-shadow:inset 0 16px 16px -16px var(--scroll-fade),-28px 0 70px #0009}@media(forced-colors:active){[data-scroll-surface],.scroll-hint{scrollbar-width:auto;-ms-overflow-style:auto}[data-scroll-surface]::-webkit-scrollbar,.scroll-hint::-webkit-scrollbar{display:block;width:auto;height:auto}}
.workspace-master-navigation~.hwv-quota-control{bottom:92px}.workspace-master-navigation~.window-controller{bottom:101px}
@media(max-width:900px){.workspace-master-navigation~.hwv-quota-control{right:12px;bottom:84px}}

/* HWV-239: dieselbe diskrete Bedienung auf Dashboard und Workspace. */
.window-controller{right:24px;bottom:max(24px,calc(env(safe-area-inset-bottom) + 16px));opacity:.5;transition:opacity .14s ease}.window-controller:is(:hover,:focus-within,.is-interacting){opacity:1}.workspace-master-navigation~.window-controller{bottom:max(24px,calc(env(safe-area-inset-bottom) + 16px))}.window-controller-capsule{top:-10px;height:44px;background:transparent}.window-controller-capsule::before{content:"";position:absolute;inset:13px 0;height:18px;border-radius:99px;background:var(--acid,#a5cc28)}.window-controller-edge{top:0;width:44px;height:44px;background:transparent}.window-controller-edge::after{content:"";position:absolute;top:15px;width:9px;height:14px;border-radius:99px;background:#11160855}.window-controller-edge.is-left{left:-14px}.window-controller-edge.is-left::after{left:14px}.window-controller-edge.is-right{right:-14px}.window-controller-edge.is-right::after{right:14px}.hwv-overlay-layer{position:fixed;inset:0;z-index:calc(var(--z-controls) + 10);pointer-events:none}.hwv-overlay-layer>*{pointer-events:auto}

/* HWV-240: Scrollflächen bleiben bedienbar, native Leisten werden in der App nie sichtbar. */
:where(html,body,body *){scrollbar-width:none!important;-ms-overflow-style:none!important}:where(html,body,body *)::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
/* Der Prozentwert bleibt als Live-Region für Hilfstechnologien erhalten, ist visuell aber kein Flyout. */
.window-controller-live,.window-controller:focus-within .window-controller-live,.window-controller.is-interacting .window-controller-live{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;opacity:0!important;transform:none!important}
.hwv-order-review{overflow-wrap:anywhere}.hwv-order-review [data-order-links]{display:flex;flex-wrap:wrap;gap:14px;margin:14px 0}.hwv-order-actions{display:flex;flex-wrap:wrap;gap:10px}.hwv-order-actions button{min-height:44px;border:1px solid var(--line,#ccd4d5);border-radius:11px;padding:10px 14px;background:var(--soft,#eef2f2);color:inherit}
.hwv-order-actions [data-order-confirm]{border-color:var(--acid,#a5cc28);background:var(--acid,#a5cc28);color:#111608}.hwv-order-actions [data-order-back]{background:transparent}

/* v44: the width slider sits above the quota button instead of underneath it. */
/* Keep the window slider clear of the quota button: beside it on wide screens, above it otherwise. */
@media (min-width:901px) and (max-width:1279px){.window-controller,.workspace-master-navigation~.window-controller{bottom:max(84px,calc(env(safe-area-inset-bottom) + 76px))}}
@media (min-width:1280px){.window-controller,.workspace-master-navigation~.window-controller{right:176px}}

/* v44: readable research structure in helper panel and saved notes. */
.research-heading{margin:1.1em 0 .4em;font-size:1.02em;font-weight:650;line-height:1.35}
.research-table{max-width:100%;overflow-x:auto;margin:.6em 0}
.research-table table{border-collapse:collapse;font-size:.92em;min-width:100%}
.research-table :is(th,td){padding:6px 8px;border-bottom:1px solid var(--line,#ccd4d5);text-align:left;vertical-align:top;overflow-wrap:normal}
.research-table th{font-weight:650}
/* An open quota dialog must sit above persistent appearance controls. */
.hwv-quota-open .hwv-quota-control,.hwv-quota-open .central-dock:has(.hwv-quota-control){z-index:var(--z-detail,110)}
