:root{--accent:#5b4fcf;--accent-soft:#e7e4f9;--text:#1f1d26;--surface:#fff;--line:#e6e3ee;--star:#b07a00;--control-border:#91899f;--background:#f7f6fa;--muted:#625e70;--photo:#dfe5ec;--photo-text:#495469;--on-accent:#fff;--overlay:#1f1d2680;--shadow:#1f1d2614;--transparent:transparent;--ok:#1d7a3e;--tapete-grund:#3e3a52;--tapete-licht:#ffffff14;--tapete-tiefe:#00000038;--tapete-text:#fff;--tapete-schatten:#00000059;--text-size:106.25%;--header-height:5rem;--nav-height:4.7rem;--content-max:1180px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--accent:#a99eff;--accent-soft:#2a2550;--text:#edebf2;--surface:#17161c;--line:#2e2b38;--star:#e9b949;--control-border:#81798f;--background:#111015;--muted:#b5b0c2;--photo:#29313e;--photo-text:#cfd8e6;--on-accent:#17161c;--overlay:#0009;--shadow:#00000040;--ok:#6ccb8a;--tapete-licht:#ffffff05;--tapete-tiefe:#00000070;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html{font-size:var(--text-size);scroll-padding-bottom:calc(var(--nav-height) + 1rem)}body{background:var(--background);color:var(--text);margin:0;font-family:Nunito Sans Variable,sans-serif;font-weight:600;line-height:1.5}:lang(th){font-family:Nunito Sans Variable,Noto Sans Thai Variable,sans-serif}html:lang(th) body{line-height:1.65}button,input,select,textarea{font:inherit;color:inherit}button,.button,select,input[type=search]{border:1px solid var(--control-border);background:var(--surface);border-radius:.8rem;min-height:48px}button,.button{cursor:pointer;text-align:center;justify-content:center;align-items:center;gap:.45rem;padding:.55rem .85rem;font-weight:850;text-decoration:none;display:inline-flex}button{min-width:48px}button:hover,.button:hover{border-color:var(--accent)}button:disabled,button[aria-disabled=true]{cursor:not-allowed;color:var(--muted);background:var(--background);border-style:dashed}a{color:inherit;text-underline-offset:.18em}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}h1,h2,h3,strong,legend{font-weight:900}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.035em;margin-bottom:.6rem;font-size:2rem;line-height:1.15}h2{font-size:1.28rem;line-height:1.3}p{margin-bottom:1rem}.icon{flex-shrink:0;width:1.25em;height:1.25em}.primary,button[aria-pressed=true]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.muted{color:var(--muted)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--surface);padding:.7rem;position:fixed;top:-100px;left:1rem}.skip-link:focus{top:.5rem}.app-header{height:var(--header-height);padding:.7rem max(1rem, calc((100vw - var(--content-max)) / 2));background:var(--surface);border-bottom:1px solid var(--line);align-items:center;gap:1.5rem;display:flex}.app-header>button{flex-shrink:0}.brand{overflow-wrap:anywhere;letter-spacing:-.03em;flex-direction:column;justify-content:center;min-width:0;min-height:48px;font-size:1.12rem;font-weight:900;line-height:1.2;text-decoration:none;display:flex}.bottom-nav{background:var(--surface);border-top:1px solid var(--line);z-index:20;padding:.35rem .3rem calc(.35rem + env(safe-area-inset-bottom));min-height:var(--nav-height);justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{border-radius:1rem;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.15rem;min-width:48px;max-width:230px;min-height:58px;font-weight:850;text-decoration:none;display:flex}.bottom-nav a[aria-current]{background:var(--accent-soft);color:var(--accent)}.discovery-page{max-width:calc(var(--content-max) + 2rem);padding:1.8rem 1rem calc(var(--nav-height) + 2rem + env(safe-area-inset-bottom));margin:0 auto}.page-heading{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.2rem;display:flex}.eyebrow{color:var(--accent);letter-spacing:.08em;margin-bottom:.45rem;font-size:1rem;font-weight:850}.header-actions{flex-shrink:0;margin-left:auto;display:flex}.header-actions:empty{display:none}.app-header.ort-kopf{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:.5rem;display:grid}.kopf-links{grid-column:1;align-items:center;gap:1.5rem;min-width:0;display:flex}.kopf-links>button{flex-shrink:0}.wortmarke{justify-content:center}.stadt-knopf{border-color:var(--transparent);background:var(--transparent);letter-spacing:-.02em;grid-column:2;gap:.25rem;max-width:min(46vw,22rem);min-height:48px;padding:.5rem .7rem;font-size:1.12rem;font-weight:900}.stadt-knopf:hover{border-color:var(--transparent);background:var(--accent-soft)}.stadt-knopf>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.stadt-knopf .icon{width:1em;height:1em;color:var(--muted)}.ort-kopf .header-actions{grid-column:3;justify-self:end;margin-left:0}.filter-button{flex-shrink:0;position:relative}.filter-button.active{color:var(--accent);border-color:var(--accent)}.filter-count{background:var(--accent);min-width:1.4rem;height:1.4rem;color:var(--on-accent);text-align:center;border:2px solid var(--surface);border-radius:999px;padding:0 .3rem;font-size:.8rem;line-height:1.4rem;position:absolute;top:-.4rem;right:-.4rem}.results-toolbar{justify-content:space-between;align-items:center;gap:1rem;margin:1rem 0 .5rem;display:flex}.results-toolbar p{margin:0}.results-toolbar label{align-items:center;gap:.7rem;display:flex}select{max-width:100%;padding:.55rem 2rem .55rem .7rem}.sort-hint{margin:.5rem 0}.location-row{align-items:center;gap:.8rem;margin:-.7rem 0 1rem;display:flex}.location-row button{flex-shrink:0}.page-heading-text{min-width:0}.kopf-knoepfe{flex-shrink:0;gap:.15rem;display:flex}.kopf-knopf{background:var(--transparent);border:0;border-radius:.8rem;flex-direction:column;gap:.2rem;min-width:56px;min-height:48px;padding:.15rem .1rem}.kopf-kreis{border:2px solid var(--accent);width:46px;height:46px;color:var(--accent);background:var(--surface);border-radius:50%;place-items:center;display:grid}.kopf-beschriftung{color:var(--muted);white-space:nowrap;font-size:.75rem;font-weight:750;line-height:1.2}.kopf-knopf:hover .kopf-kreis{background:var(--accent-soft)}.kopf-knopf.is-located .kopf-kreis,.kopf-knopf.is-active .kopf-kreis{background:var(--accent);color:var(--on-accent)}.kopf-knopf:disabled{background:var(--transparent)}.kopf-knopf:disabled .kopf-kreis{border-style:dashed;border-color:var(--control-border);color:var(--muted);background:var(--background)}.entdecken-suche{margin:-.4rem 0 1rem;position:relative}.entdecken-suche input{padding-right:3.2rem}.entdecken-suche input::-webkit-search-cancel-button{appearance:none;display:none}.suche-loeschen{background:var(--transparent);height:100%;color:var(--muted);border:0;position:absolute;top:0;right:0}.suche-loeschen:hover{color:var(--accent)}.location-row.is-leer{margin:0}.active-filters{background:var(--accent-soft);color:var(--accent);border-radius:.9rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.7rem;display:flex}.active-filters span{overflow-wrap:anywhere}.notice{border-left:4px solid var(--accent);background:var(--surface);padding:.7rem 1rem}.studio-grid{grid-template-columns:minmax(0,1fr);gap:1.2rem;display:grid}.studio-card{border:1px solid var(--line);background:var(--surface);box-shadow:0 5px 20px var(--shadow);border-radius:1.25rem;flex-direction:column;display:flex;overflow:hidden}.photo-link{text-decoration:none;display:block}.card-body{flex-direction:column;flex:1;padding:1rem;display:flex}.badges{flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:.65rem;display:flex}.badge,.abzeichen{background:var(--background);min-width:0;min-height:0;color:var(--muted);font:inherit;font-weight:700;line-height:inherit;border:0;border-radius:999px;align-items:center;gap:.3rem;margin:0;padding:0 .55rem;display:inline-flex}.abzeichen{cursor:default;position:relative}.abzeichen:hover{border-color:var(--transparent)}.abzeichen:after{content:"";position:absolute;inset:-.7rem -.15rem}.abzeichen-symbol{flex-shrink:0;width:1em;height:1em}@media (max-width:479.98px){.abzeichen{cursor:pointer;padding:.2rem .4rem}.abzeichen-text{display:none}.abzeichen[data-offen] .abzeichen-text{z-index:5;background:var(--text);width:max-content;max-width:min(70vw,16rem);color:var(--surface);box-shadow:0 2px 10px var(--shadow);white-space:normal;text-align:left;border-radius:.5rem;padding:.25rem .6rem;display:block;position:absolute;top:calc(100% + .4rem);left:0}}.ad-badge{background:var(--accent-soft);color:var(--accent)}.promoted-card{border:2px solid var(--accent)}.card-body h2{overflow-wrap:anywhere;margin-bottom:.65rem}.card-body h2 a{min-height:48px;text-decoration:none;display:block}.card-body h2 a:hover{color:var(--accent);text-decoration:underline}.rating{align-items:center;gap:.3rem;display:inline-flex}.rating .icon{color:var(--star);fill:var(--star)}.card-location{color:var(--muted);flex-wrap:wrap;gap:.2rem .7rem;margin:.6rem 0;display:flex}.massage-types{margin-bottom:1rem}.card-footer{border-top:1px solid var(--line);flex-direction:column;gap:.4rem;margin-top:auto;padding-top:.7rem;display:flex}.card-footer strong{font-size:1.2rem}.open-label{color:var(--accent)}.empty-state{text-align:center;padding:2rem 1rem}.sheet{border:1px solid var(--line);background:var(--surface);width:min(100%,720px);max-width:100%;max-height:min(92dvh,1000px);color:var(--text);box-shadow:0 -8px 40px var(--shadow);overscroll-behavior:contain;border-bottom:0;border-radius:1.4rem 1.4rem 0 0;margin:0 auto;padding:0;position:fixed;inset:auto 0 0;overflow-y:auto}.sheet::backdrop{background:var(--overlay)}.sheet-header{border-bottom:1px solid var(--line);background:var(--surface);z-index:2;justify-content:space-between;align-items:center;gap:.5rem;padding:1rem;display:flex;position:sticky;top:0}.sheet-header h2{margin:0}.sheet-header button{flex-shrink:0}.filter-fields{padding:1rem}.filter-sort{margin:1rem 0}.filter-sort label{flex-direction:column;gap:.5rem;display:flex}.search-label{flex-direction:column;gap:.5rem;font-weight:850;display:flex}input[type=search]{width:100%;padding:.8rem}fieldset{border:0;min-width:0;margin:1.5rem 0;padding:0}legend{margin-bottom:.6rem;padding:0;font-size:1.15rem}.chips{flex-wrap:wrap;gap:.5rem;display:flex}.chips button{border-radius:1.5rem;font-weight:750}.chip-count{font-weight:900}.switch-row{border-top:1px solid var(--line);cursor:pointer;justify-content:space-between;align-items:center;gap:1rem;min-height:64px;display:flex}input[role=switch]{appearance:none;cursor:pointer;flex-shrink:0;width:58px;height:48px;margin:0;position:relative}input[role=switch]:before{content:"";border:2px solid var(--muted);background:var(--surface);border-radius:20px;position:absolute;inset:8px 0}input[role=switch]:after{content:"";background:var(--muted);border-radius:50%;width:22px;height:22px;position:absolute;top:13px;left:5px}input[role=switch]:checked:before{background:var(--accent);border-color:var(--accent)}input[role=switch]:checked:after{background:var(--on-accent);left:31px}.sheet-actions{background:var(--surface);border-top:1px solid var(--line);padding:.8rem 1rem calc(.8rem + env(safe-area-inset-bottom));position:sticky;bottom:0}.sheet-actions button{width:100%}.menu-links{flex-direction:column;padding:.5rem 1rem;display:flex}.menu-links a{border-bottom:1px solid var(--line);min-height:48px;padding:.75rem .5rem;text-decoration:none}.menu-links a:hover{background:var(--accent-soft)}.menu-konto{padding-top:0}.menu-links .menu-abmelden{all:unset;box-sizing:border-box;border-bottom:1px solid var(--line);width:100%;min-height:48px;color:inherit;cursor:pointer;font:inherit;padding:.75rem .5rem;display:block}.menu-links .menu-abmelden:hover{background:var(--accent-soft)}.menu-links .menu-abmelden:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sprach-wahl{flex-wrap:wrap;justify-content:center;gap:.5rem;padding:1rem 1rem .25rem;display:flex}.sprach-wahl button{flex:0 0 calc(33.3333% - .333333rem);min-width:0;min-height:56px;font-size:1.05rem}@media (min-width:720px){.sprach-wahl button{flex-basis:calc(20% - .4rem)}}.konto-sprache .sprach-wahl{padding:0}.sprach-zeile{padding:.5rem 1rem calc(.5rem + env(safe-area-inset-bottom));color:var(--muted);flex-wrap:wrap;justify-content:center;align-items:center;font-size:.9rem;display:flex}.sprach-zeile button,.sprach-zeile button[aria-pressed=true]{background:var(--transparent);min-width:48px;min-height:48px;color:var(--muted);border:0;border-radius:.6rem;padding:0 .55rem;font-weight:600}.sprach-zeile button[aria-pressed=true]{color:var(--text);font-weight:900}.sprach-zeile button:hover{background:var(--accent-soft)}.sprach-trenner{padding:0 .1rem}.ort-wahl{padding:0 1rem 1rem}.ort-wahl section{border-bottom:1px solid var(--line);padding:1rem 0}.ort-wahl section:last-child{border-bottom:0}.ort-wahl h3{margin:0 0 .6rem;font-size:1.15rem}.ort-wahl .big-button{margin-top:0}.ort-wahl section>p{margin:.5rem 0 0}.ort-suche{gap:.5rem;display:flex}.ort-suche input{flex:1;min-width:0}.ort-suche button{flex-shrink:0}.ort-meldung:empty{display:none}.ort-aktiv{background:var(--accent-soft);color:var(--accent);border-radius:.9rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.6rem;padding:.5rem .7rem;display:flex}.stadt-liste{flex-wrap:wrap;gap:.5rem;margin:0 0 .6rem;padding:0;list-style:none;display:flex}.stadt-liste button{border-radius:1.5rem}.notice-mit-knopf{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;display:flex}.notice-mit-knopf p{flex:16rem;margin:0}.standort-knoepfe{flex-wrap:wrap;gap:.5rem;margin-top:.6rem;display:flex}.card-photo{position:relative}.card-save{box-shadow:0 2px 10px var(--shadow);position:absolute;top:.6rem;right:.6rem}.save-button[aria-disabled=true]{background:var(--surface)}.back-link{margin-bottom:1rem}.gallery{margin:0 0 1rem}.gallery-track{scroll-snap-type:x mandatory;border-radius:1rem;display:flex;overflow-x:auto}.gallery-symbolbild{position:relative}.gallery-track img{object-fit:cover;scroll-snap-align:center;background:var(--photo);flex:0 0 100%;width:100%;height:280px}.gallery-dots{justify-content:center;gap:.2rem;margin-top:.3rem;display:flex}.gallery-dots button{background:var(--transparent);border:0;padding:0}.gallery-dots button span{background:var(--line);border-radius:50%;width:.7rem;height:.7rem}.gallery-dots button[aria-current] span{background:var(--accent)}.profile-top{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.profile-top .badges{margin:.4rem 0 0}.profile-page h1{overflow-wrap:anywhere;margin-top:.6rem}.profile-facts{gap:.6rem;margin:1rem 0;display:grid}.profile-facts div{grid-template-columns:8.5rem 1fr;gap:.8rem;display:grid}.profile-facts dt{color:var(--muted)}.profile-facts dd{overflow-wrap:anywhere;margin:0}.home-visit{background:var(--accent-soft);color:var(--accent);border-radius:.8rem;align-items:center;gap:.4rem;padding:.45rem .8rem;display:inline-flex}.contact-row{flex-wrap:wrap;gap:.4rem 1rem;margin:1.2rem 0 .4rem;padding:0;list-style:none;display:flex}.contact-action{background:var(--transparent);cursor:pointer;border:0;border-radius:.8rem;flex-direction:column;align-items:center;gap:.3rem;min-width:64px;min-height:48px;padding:.2rem;font-weight:850;text-decoration:none;display:flex}.contact-action:hover{color:var(--accent)}.contact-circle{border:2px solid var(--accent);width:54px;height:54px;color:var(--accent);background:var(--surface);border-radius:50%;place-items:center;display:grid}.contact-circle.primary{background:var(--accent);color:var(--on-accent)}.contact-note{margin:0 0 .5rem}.route-choices{padding:1rem 1rem calc(1rem + env(safe-area-inset-bottom));flex-direction:column;gap:.7rem;display:flex}.route-choices p{margin:0}.hours{border-collapse:collapse;width:100%}.hours th,.hours td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.55rem .6rem}.hours th{width:40%;font-weight:750}.hours tr.today{background:var(--accent-soft);color:var(--accent)}.hours tr.today th{font-weight:900}.service-variants{margin:.3rem 0 0;padding:0;list-style:none}.service-variants li{justify-content:space-between;gap:1rem;padding:.25rem 0;display:flex}.service-price{white-space:nowrap;font-weight:850}.website-link{margin:1.5rem 0 .6rem}.website-link .button{overflow-wrap:anywhere}.source-line{font-size:1rem}.uwg-hinweis{margin:.6rem 0 1rem;font-size:1rem}.claim-box,.missing-studio{border:1px solid var(--line);background:var(--surface);border-radius:1rem;margin-top:2rem;padding:1.2rem}.claim-box{background:var(--accent-soft);border-color:var(--accent)}.profile-page .claim-box h2,.missing-studio h2{margin-top:0}.missing-studio{text-align:center;color:var(--muted)}.missing-studio h2{color:var(--text)}.steps{padding-left:1.4rem}.steps li{margin-bottom:1rem}.steps h2{margin:0 0 .2rem;font-size:1.15rem}.steps p{margin:0}.placeholder-page,.profile-page{max-width:800px;padding:2rem 1rem calc(var(--nav-height) + 2rem + env(safe-area-inset-bottom));margin:0 auto}.placeholder-page>.icon{width:3rem;height:3rem;color:var(--accent);margin-bottom:1rem}.profile-page h2{margin-top:2rem}.services{margin:0;padding:0;list-style:none}.services>li{border-bottom:1px solid var(--line);padding:.9rem 0}.map-page{height:calc(100dvh - var(--header-height) - var(--nav-height) - env(safe-area-inset-bottom));min-height:400px}.map-container{height:100%;position:relative;overflow:hidden}.map-canvas{z-index:0;isolation:isolate;background:var(--photo);position:absolute;inset:0}.map-bottom{z-index:5;pointer-events:none;flex-direction:column;gap:.65rem;width:min(100%,470px);max-height:calc(100% - 100px);display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.map-controls{pointer-events:none;flex-shrink:0;gap:.4rem;margin:0 .65rem;display:flex}.map-controls>*{pointer-events:auto}.map-controls>button,.map-controls>.button{min-width:0;min-height:48px;box-shadow:0 3px 12px var(--shadow);flex:1;gap:.3rem;padding:.55rem .35rem}.map-controls .map-location{border-color:var(--accent);color:var(--accent);flex-grow:1.3}.map-controls .map-location.is-located{background:var(--accent);color:var(--on-accent)}.map-controls .is-active{border-color:var(--accent);color:var(--accent)}.radius-chips{margin-top:.6rem}.map-sheet{background:var(--surface);border:1px solid var(--line);min-height:0;box-shadow:0 -5px 30px var(--shadow);pointer-events:auto;border-radius:1.2rem 1.2rem 0 0;padding:.8rem 1rem;overflow-y:auto}.map-summary{white-space:nowrap;margin:0;font-weight:850;overflow-x:auto}.map-status:empty{display:none}.map-status{margin:.4rem 0 0}.map-loading{padding:2rem}.studio-pin{background:var(--transparent);cursor:pointer;border:0;flex-direction:column;gap:0;padding:0;font-family:inherit;display:flex}.studio-pin:hover{z-index:4}.studio-pin:focus-visible{z-index:5}.pin-circle{background:var(--surface);border:2px solid var(--accent);width:48px;height:48px;color:var(--accent);box-shadow:0 2px 10px var(--shadow);border-radius:50%;place-items:center;font-weight:900;display:grid}.pin-label{background:var(--surface);color:var(--text);border:1px solid var(--line);white-space:nowrap;box-shadow:0 2px 10px var(--shadow);border-radius:.5rem;padding:.15rem .4rem;font-size:1rem;display:none}.map-labels-visible .pin-label{display:block}.promoted-pin{z-index:2}.promoted-pin .pin-circle{background:var(--accent);width:64px;height:64px;color:var(--on-accent)}.promoted-pin .pin-label{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.own-location{background:var(--accent);color:var(--on-accent);border:3px solid var(--surface);border-radius:1rem;padding:.2rem .6rem;font-weight:850}.own-location.own-location-manuell{background:var(--surface);color:var(--accent);border:3px dashed var(--accent)}.map-plz{width:100%;margin-top:.5rem}.map-detail{padding:.2rem 0}.map-detail-top{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.65rem;display:flex}.map-detail h2{margin:.6rem 0}.detail-facts{flex-wrap:wrap;gap:.5rem 1rem;margin:.7rem 0;display:flex}.map-detail .contact-row{margin-top:.8rem}.maplibregl-map{font:inherit}.map-canvas .maplibregl-ctrl-bottom-left,.map-canvas .maplibregl-ctrl-bottom-right{bottom:calc(var(--map-bottom-height,120px) + .5rem)}.map-canvas .maplibregl-ctrl-group button{min-width:29px;min-height:29px;padding:0}.maplibregl-ctrl-attrib{color:var(--text);font-size:max(12px,.7rem);background:var(--surface)!important}.maplibregl-ctrl-attrib a{color:var(--text);align-items:center;min-height:48px;display:inline-flex}.maplibregl-ctrl-attrib-button{background-color:var(--surface)}.studio-buendel{border:3px solid var(--surface);background:var(--accent);width:48px;min-width:48px;height:48px;min-height:48px;color:var(--on-accent);box-shadow:0 0 0 5px var(--accent-soft), 0 2px 10px var(--shadow);z-index:1;border-radius:50%;padding:0;font-family:inherit;font-size:1rem;font-weight:900;line-height:1}.studio-buendel:hover{border-color:var(--surface);z-index:4}.studio-buendel:focus-visible{z-index:5}.studio-buendel.buendel-stufe-2{width:56px;height:56px;font-size:1.05rem}.studio-buendel.buendel-stufe-3{width:66px;height:66px;box-shadow:0 0 0 7px var(--accent-soft), 0 2px 10px var(--shadow);font-size:1.15rem}.pin-circle{position:relative;overflow:hidden}.pin-bild{object-fit:cover;background:var(--photo);border-radius:50%;width:100%;height:100%;position:absolute;inset:0}.promoted-pin .pin-circle{border-width:3px}.studio-pin.is-selected{z-index:6}.studio-pin.is-selected .pin-circle{box-shadow:0 0 0 6px var(--accent-soft), 0 2px 10px var(--shadow);border-width:4px}.ausschnitt-reihe{scroll-snap-type:x mandatory;overscroll-behavior-x:contain;grid-auto-columns:16.5rem;grid-auto-flow:column;gap:.5rem;margin:.6rem -1rem 0;padding:0 1rem .35rem;scroll-padding-inline:1rem;list-style:none;display:grid;overflow-x:auto}.ausschnitt-reihe li{scroll-snap-align:start;min-width:0}.ausschnitt-karte{border:1px solid var(--line);text-align:left;border-radius:.9rem;justify-content:flex-start;align-items:center;gap:.6rem;width:100%;height:100%;padding:.45rem .6rem .45rem .45rem;font-weight:600}.ausschnitt-bild{object-fit:cover;background:var(--photo);border-radius:.5rem;flex-shrink:0;width:64px;height:43px}.ausschnitt-text{flex-direction:column;min-width:0;line-height:1.3;display:flex}.ausschnitt-name{text-overflow:ellipsis;white-space:nowrap;font-weight:850;overflow:hidden}.ausschnitt-text .rating{min-width:0;display:flex}.ausschnitt-text .rating>span,.ausschnitt-text .muted{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ausschnitt-zaehler{margin:.35rem 0 0}@media (min-width:1000px){.map-bottom{width:min(100%,520px)}.ausschnitt-reihe{grid-template-rows:repeat(2,auto)}}@media (max-width:1000px){.results-toolbar{flex-direction:column;align-items:flex-start}}@media (max-width:600px){.app-header{gap:.55rem;padding:.65rem .7rem}.app-header>button{padding:.5rem}.brand{font-size:1rem}.brand>span:first-child,.ort-kopf .wortmarke{display:none}.app-header.ort-kopf{gap:.35rem}.kopf-links>button{padding:.5rem}.stadt-knopf{padding:.5rem .4rem}.filter-button{padding:.5rem}.discovery-page{padding-top:1.2rem}.card-photo .studio-vorschau{height:175px}.results-toolbar label{flex-direction:column;align-items:stretch;gap:.3rem;width:100%}.location-row{flex-direction:column;align-items:flex-start;gap:.5rem}.page-heading{gap:.5rem}.sheet-header{padding:.8rem}.sheet-header button{padding:.5rem}.bottom-nav a{font-size:1rem}.profile-facts div{grid-template-columns:1fr;gap:0}.contact-row{justify-content:space-between;gap:.4rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.field-label{margin:1rem 0 .4rem;font-weight:850;display:block}.text-input{border:1px solid var(--control-border);background:var(--surface);border-radius:.8rem;width:100%;min-height:48px;padding:.7rem .8rem}.text-input[aria-invalid=true]{border-color:var(--accent);border-width:2px}.big-button{width:100%;min-height:56px;margin:.4rem 0;font-size:1.1rem}.login-block{margin:1rem 0}.login-or{text-align:center;margin:.5rem 0}.konto-links{flex-direction:column;gap:.2rem;margin:1rem 0 1.5rem;display:flex}.konto-liste{margin:0;padding:0;list-style:none}.konto-liste li{border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:.7rem 0}.konto-bewertungen .studio-link{align-items:center;min-height:48px;display:inline-flex}.konto-bewertungen .konto-liste p{margin:.3rem 0}.konto-bewertungen .button{margin-top:.3rem}.konto-block{margin:2rem 0 1rem}.danger-zone{border:1px solid var(--control-border);background:var(--surface);border-radius:1rem;margin-top:2rem;padding:1.2rem}.danger-zone h2{margin-top:0}.danger{border-width:2px}.check-row{cursor:pointer;align-items:flex-start;gap:.7rem;min-height:48px;padding:.6rem 0;display:flex}.check-row input,.weg-option input{width:24px;height:24px;accent-color:var(--accent);flex-shrink:0;margin:.15rem 0 0}.weg-option{border:1px solid var(--control-border);background:var(--surface);cursor:pointer;border-radius:.9rem;align-items:flex-start;gap:.7rem;min-height:48px;margin-bottom:.6rem;padding:.8rem;display:flex}.weg-option:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.email-teil{margin:-.2rem 0 1rem 2.6rem}.email-zeile{align-items:center;gap:.4rem;display:flex}.email-zeile span{white-space:nowrap;font-weight:850}.claim-form,.code-form,.eintrag-form{margin-top:1.5rem}.code-input{letter-spacing:.2em;max-width:12rem;font-size:1.4rem}.feld-fehler{color:var(--accent);margin:.3rem 0 0;font-weight:850}.feld-paar{grid-template-columns:10rem 1fr;gap:.8rem;display:grid}.schritt-anzeige{color:var(--accent);font-weight:900}.schritt-knoepfe{justify-content:space-between;gap:.7rem;margin-top:1.5rem;display:flex}.schritt-knoepfe .primary{min-width:9rem;margin-left:auto}.chips .weg-option{margin:0}.save-button{white-space:nowrap;flex-shrink:0}.save-button.saved .icon{fill:currentColor}.map-detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.merkliste{margin:1rem 0;padding:0;list-style:none}.merk-eintrag{border-bottom:1px solid var(--line);padding:1rem 0}.merk-kopf{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.merk-oben{align-items:flex-start;gap:.8rem;display:flex}.merk-bild{flex:0 0 96px}.merk-bild .studio-vorschau{border-radius:.6rem;width:96px;height:64px}.merk-text{flex:auto;min-width:0}.merk-kopf h2{overflow-wrap:anywhere;min-width:0;margin:0 0 .3rem}.merk-kopf h2 a{min-height:48px;display:inline-block}.mod-liste{margin:0;padding:0;list-style:none}.mod-eintrag{border:1px solid var(--line);background:var(--surface);overflow-wrap:anywhere;border-radius:1rem;margin-bottom:1rem;padding:1rem}.mod-eintrag h3{margin:0 0 .4rem}.mod-eintrag p{margin-bottom:.4rem}.mod-aktionen{flex-direction:column;gap:.8rem;margin-top:.8rem;display:flex}.ablehnen-form button{margin-top:.5rem}.code-anzeige{letter-spacing:.15em;font-size:1.4rem}.zaehler{font-weight:850}@media (max-width:600px){.feld-paar{grid-template-columns:1fr;gap:0}.email-teil{margin-left:0}}.studio-vorschau{object-fit:cover;background:var(--photo);width:100%;height:165px;display:block}.map-detail-top .studio-vorschau{border-radius:.75rem;width:100px;height:80px}.kategorie-tapete{color:var(--tapete-text);text-align:center;background:linear-gradient(170deg, var(--tapete-licht), var(--tapete-tiefe)), var(--tapete) center / 104px repeat, var(--tapete-grund);justify-content:center;align-items:center;display:flex;container-type:inline-size}.kategorie-titel{letter-spacing:.01em;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:100%;text-shadow:0 1px 3px var(--tapete-schatten), 0 1px 2px #00000073;flex-direction:column;align-items:center;gap:.35em;padding:.5rem .8rem;font-size:clamp(.66rem,7cqi,1.45rem);font-weight:900;line-height:1.15;display:flex}.kategorie-titel:before,.kategorie-titel:after{content:"";opacity:.55;background:currentColor;width:2.2em;height:1px}@container (max-width:140px){.kategorie-titel{padding:.3rem;font-size:.62rem}.kategorie-titel:before,.kategorie-titel:after{display:none}}.merk-bild .kategorie-titel,.map-detail-top .kategorie-titel{padding:.3rem;font-size:.62rem}.merk-bild .kategorie-titel:before,.merk-bild .kategorie-titel:after,.map-detail-top .kategorie-titel:before,.map-detail-top .kategorie-titel:after{display:none}.gallery-symbolbild .kategorie-tapete{background-size:auto,132px;flex:0 0 100%;width:100%;height:280px}.gallery-symbolbild .kategorie-titel{font-size:clamp(1.5rem,5cqi,2.4rem)}.studio-beschreibung{white-space:pre-line;overflow-wrap:anywhere;margin:.8rem 0 0}.profile-page .big-button{margin-top:.8rem}.mein-studio-page h1{overflow-wrap:anywhere}.studio-abschnitt{border:1px solid var(--line);background:var(--surface);border-radius:1rem;margin-top:2rem;padding:1.2rem}.studio-abschnitt h2{margin:0 0 .6rem}.studio-abschnitt fieldset{margin:1rem 0}.text-feld{resize:vertical;min-height:8rem;line-height:1.5}.zeichen-zaehler{color:var(--muted);margin:.3rem 0 .6rem;font-weight:750}.zeichen-zaehler.zu-viel{color:var(--accent);font-weight:900}.check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem;display:grid}.zeiten-zeile{grid-template-columns:9rem 1fr;align-items:center;gap:0 .8rem;display:grid}.zeiten-zeile .field-label{margin:.5rem 0}.zeiten-zeile .feld-fehler{grid-column:2}.leistungen-liste{margin:0 0 1rem;padding:0;list-style:none}.leistung-zeile{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 6rem 7rem 48px;align-items:end;gap:0 .6rem;padding:.6rem 0;display:grid}.leistung-zeile .feld-fehler{grid-column:1/-1}.zeile-weg{align-self:end}.speichern-leiste{bottom:calc(var(--nav-height) + env(safe-area-inset-bottom));z-index:5;background:var(--background);margin-top:1.5rem;padding:.6rem 0;position:sticky}.speichern-leiste .notice{margin:0 0 .4rem}.notice.gespeichert{background:var(--accent-soft)}.stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin:0;display:grid}.sichtbarkeit-rang{font-size:1.25rem;font-weight:850}.tipp-liste{margin:.4rem 0 0;padding:0;list-style:none}.collabo-hinweis{margin-top:1rem}.stat-kachel{background:var(--accent-soft);border-radius:.9rem;padding:.9rem}.stat-kachel dt{font-weight:850}.stat-kachel dd{flex-direction:column;margin:0;display:flex}.stat-zahl{color:var(--accent);font-size:2.4rem;font-weight:900;line-height:1.1}.foto-liste{gap:1rem;margin:1rem 0;padding:0;list-style:none;display:grid}.foto-eintrag{grid-template-columns:9rem 1fr;align-items:start;gap:.8rem;display:grid}.foto-eintrag img{object-fit:cover;background:var(--photo);border-radius:.75rem;width:100%;height:auto;max-height:9rem}.foto-knoepfe{flex-wrap:wrap;gap:.5rem;display:flex}.foto-knoepfe form{margin:0}.foto-upload{margin-top:1rem}.foto-upload input[type=file]{padding:.6rem}@media (max-width:600px){.check-grid,.zeiten-zeile{grid-template-columns:1fr}.zeiten-zeile .feld-fehler{grid-column:1}.leistung-zeile{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 48px}.leistung-zeile .leistung-name{grid-column:1/-1}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.foto-eintrag{grid-template-columns:1fr}.foto-eintrag img{max-height:12rem}.studio-abschnitt{padding:1rem .8rem}}.bewertungen{margin-top:2rem}.bewertung-liste{margin:1rem 0;padding:0;list-style:none}.bewertung-eintrag{border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:1rem 0}.bewertung-kopf{flex-wrap:wrap;align-items:center;gap:.3rem .8rem;display:flex}.bewertung-meta{margin:.2rem 0 .4rem;font-size:1rem}.bewertung-text{white-space:pre-line;overflow-wrap:anywhere}.sterne-anzeige{gap:.1rem;display:inline-flex}.stern .icon{display:block}.stern.voll .icon{color:var(--star);fill:var(--star)}.stern.leer .icon{color:var(--control-border)}.eigene-bewertung{border:1px solid var(--accent);background:var(--accent-soft);overflow-wrap:anywhere;border-radius:1rem;margin:1rem 0;padding:1rem}.eigene-bewertung h3{margin:0 0 .4rem}.bewertung-form fieldset{border:0;margin:1rem 0 0;padding:0}.bewertung-form legend{margin-bottom:.4rem;padding:0}.sterne-wahl{flex-wrap:wrap;gap:.3rem;display:flex}.stern-option{border:1px solid var(--control-border);background:var(--surface);width:56px;height:56px;color:var(--control-border);cursor:pointer;border-radius:.8rem;justify-content:center;align-items:center;display:inline-flex}.stern-option .icon{width:2rem;height:2rem}.stern-option.voll{color:var(--star);border-color:var(--star)}.stern-option.voll .icon{fill:var(--star)}.stern-option:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:3px}.bewertung-form .big-button{margin-top:1.2rem}.rueckmeldung-art{margin:0 0 1.2rem}.rueckmeldung-art .muted{margin:.6rem 0 0}.rechtstexte{margin:0;padding:0;list-style:none}.rechtstexte a{border-bottom:1px solid var(--line);align-items:center;min-height:48px;padding:.6rem .2rem;display:flex}.fehlt-etwas{background:var(--transparent);border-style:dashed}.mod-sprung{flex-wrap:wrap;gap:.5rem;margin:0 0 1.5rem;display:flex}.mod-eintrag.mod-hinweis{border:2px solid var(--accent)}.pruefhinweis{color:var(--accent);align-items:flex-start;gap:.4rem;display:flex}.seiten-nav{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;margin-top:1rem;display:flex}.stadt-knoepfe{flex-wrap:wrap;gap:.6rem;display:flex}.stadt-arten{margin:1rem 0;padding:0;list-style:none}.stadt-arten li{border-bottom:1px solid var(--line)}.stadt-arten a{justify-content:space-between;align-items:center;gap:.8rem;min-height:48px;padding:.4rem 0;display:flex}.stadt-seite .merk-eintrag h3{overflow-wrap:anywhere;margin:0 0 .3rem}.stadt-seite .merk-eintrag h3 a{min-height:48px;display:inline-block}.stadt-bewertung{margin:0 0 .2rem}.konto-geloescht{flex-wrap:nowrap;margin-bottom:1rem}.konto-geloescht p{flex:auto}.konto-geloescht button{flex-shrink:0}@media (min-width:601px){.studio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.studio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1500px){:root{--content-max:1560px}.studio-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:768px){.sheet{border-bottom:1px solid var(--line);width:min(560px,100% - 2rem);height:fit-content;max-height:min(88dvh,900px);box-shadow:0 12px 48px var(--shadow);border-radius:1.4rem;margin:auto;inset:0}.sheet-actions{padding-bottom:.8rem}.eintragen-page,.mein-studio-page,.bewerten-page{max-width:calc(720px + 2rem)}}@media (min-width:1024px){:root{--nav-height:3.9rem}.bottom-nav a{flex-direction:row;gap:.5rem;min-height:50px}.profile-page{max-width:calc(1180px + 2rem)}.profil-raster{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:0 3rem;display:grid}.profil-rechts>.contact-row:first-child{margin-top:.6rem}.profile-page>section,.profile-page>p,.profile-page>.claim-box{max-width:46rem}}@media (prefers-color-scheme:dark){.maplibregl-ctrl-group{background:var(--surface)!important;box-shadow:0 0 0 1px var(--line)!important}.maplibregl-ctrl-group button+button{border-top-color:var(--line)!important}.maplibregl-ctrl-group button .maplibregl-ctrl-icon{filter:invert()}}.vorpruefung{border-left:4px solid var(--line);margin:.2rem 0 .8rem;padding:.3rem 0 .3rem .8rem}.vorpruefung p{margin:0 0 .2rem}.vorpruefung ul{margin:.2rem 0;padding-left:1.2rem}.vorpruefung-ok{border-left-color:var(--ok)}.vorpruefung-ok .vorpruefung-stand{color:var(--ok)}.vorpruefung-befunde,.vorpruefung-fehler{border-left-color:var(--accent)}.vorpruefung-stopp{color:var(--accent);font-weight:850}.freigabe-nachfrage>summary{list-style:none}.freigabe-nachfrage>summary::-webkit-details-marker{display:none}.freigabe-nachfrage[open]>summary{margin-bottom:.5rem}.mod-lage{margin-top:.6rem}.mod-lage-felder{grid-template-columns:1fr 1fr;gap:0 .6rem;display:grid}@media (max-width:600px){.mod-lage-felder{grid-template-columns:1fr}}.rechtstext article h1{margin-bottom:.4rem}.rechtstext article h2{margin-top:2rem}.rechtstext article h3{margin-top:1.4rem}.rechtstext article p,.rechtstext article li{overflow-wrap:anywhere;line-height:1.55}.rechtstext-hinweis{border:1px solid var(--line);border-radius:10px;padding:.7rem .9rem;font-weight:700}.kurzfassungen{border-top:1px solid var(--line);margin:1rem 0 1.5rem}.kurzfassungen details{border-bottom:1px solid var(--line)}.kurzfassungen summary{cursor:pointer;min-height:48px;padding:.8rem .2rem;font-weight:800}.kurzfassungen p{overflow-wrap:anywhere;margin:0 0 .7rem;line-height:1.55}.rechtstext-tabelle{margin:1rem 0;overflow-x:auto}.rechtstext-tabelle table{border-collapse:collapse;width:100%;min-width:34rem;font-size:.92rem}.rechtstext-tabelle th,.rechtstext-tabelle td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:.45rem .5rem}
