:root{--bg:#09040d;--surface:#1b0e22;--surface2:#281531;--ink:#fff7ed;--muted:#bcaec0;--line:#ffffff20;--orange:#ffa800;--mint:#65ded2;color-scheme:dark;font-family:Inter,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none}body{margin:0;min-height:100vh;background:radial-gradient(circle at 78% 6%,#4a1d4e72,transparent 34rem),radial-gradient(circle at 9% 70%,#26102eaa,transparent 40rem),linear-gradient(135deg,#070309,#16081c 55%,#08030b);scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar,*::-webkit-scrollbar{width:0;height:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
.public-header{position:sticky;z-index:50;top:0;display:grid;grid-template-columns:auto 1fr auto;min-height:86px;padding:18px max(24px,calc((100vw - 1280px)/2));align-items:center;background:#120918bd;border-bottom:1px solid var(--line);box-shadow:0 16px 40px #0009,0 35px 80px #0007;backdrop-filter:blur(28px) saturate(1.25)}
.public-brand{display:flex;height:47px;overflow:hidden;align-items:stretch;background:#120818;border:2px solid var(--orange);border-radius:11px;box-shadow:0 8px 24px #0007;font-family:"Arial Black",sans-serif;font-weight:950}.public-brand span{display:grid;width:96px;height:43px;place-items:center;color:var(--orange);font-size:1.45rem;letter-spacing:-.09em}.public-brand b{display:grid;width:94px;height:37px;margin:3px;place-items:center;color:#fff;background:var(--orange);border:3px solid #120818;font-size:1.45rem;letter-spacing:-.09em}
.public-nav{display:flex;justify-content:center;gap:8px}.public-nav a{display:grid;width:138px;min-height:43px;padding:0 12px;place-items:center;background:#ffffff05;border:1px solid #ffa800ad;border-radius:10px;box-shadow:inset 0 1px #ffffff08,0 10px 24px #0009;color:var(--ink);font-size:.77rem;font-weight:780}.public-nav a:hover,.public-nav a.is-active{background:#ffa80018;border-color:var(--orange)}
.header-actions{display:flex;align-items:center;gap:9px}.header-actions>a{display:grid;min-height:43px;padding:0 15px;place-items:center;border-radius:10px;font-size:.75rem;font-weight:850}.account-action{background:#ffffff08;border:1px solid var(--line)}.register-action{color:#150919;background:var(--orange);border:2px solid #0b0610}.public-menu{display:none;width:42px;height:42px;padding:9px;place-items:center;gap:4px;background:#ffffff08;border:1px solid var(--line);border-radius:11px}.public-menu span{display:block;width:19px;height:2px;background:var(--ink);border-radius:99px}
.directory-main,.profile-main,.editor-main{width:min(1240px,calc(100% - 34px));margin:auto;padding:72px 0 110px}.eyebrow{margin:0;color:var(--orange);font-size:.72rem;font-weight:900;letter-spacing:.15em}.directory-hero{display:grid;grid-template-columns:1.35fr .65fr;min-height:420px;align-items:center;gap:60px}.directory-hero h1,.profile-title,.editor-hero h1{margin:16px 0 24px;font-family:"Arial Black",sans-serif;font-size:clamp(3.4rem,7vw,7rem);line-height:.88;letter-spacing:-.07em}.directory-hero h1 em,.editor-hero h1 em{color:var(--orange);font-style:normal}.directory-hero p:last-child,.editor-hero>p:last-child{max-width:720px;color:var(--muted);font-size:1rem;line-height:1.7}
.directory-radar{position:relative;width:min(360px,72vw);aspect-ratio:1;margin:auto;overflow:hidden;background:radial-gradient(circle,rgba(255,168,0,.14),transparent 13%),radial-gradient(circle,rgba(255,168,0,.055),transparent 67%);border:1px solid #ffa80068;border-radius:50%;box-shadow:inset 0 0 70px #000b,0 0 75px #ffa80018}
.directory-ring,.directory-cross,.directory-sweep,.directory-ping,.directory-person,.directory-score,.directory-celebration{position:absolute}.directory-ring{top:50%;left:50%;aspect-ratio:1;border:1px solid #ffa8004c;border-radius:50%;transform:translate(-50%,-50%)}.directory-radar .ring-one{width:30%}.directory-radar .ring-two{width:59%}.directory-radar .ring-three{width:88%}.directory-cross{background:#ffa80025}.directory-radar .cross-horizontal{top:50%;right:6%;left:6%;height:1px}.directory-radar .cross-vertical{top:6%;bottom:6%;left:50%;width:1px}
.directory-sweep{inset:6%;overflow:hidden;border-radius:50%;animation:directoryRotate 4.8s linear infinite}.directory-sweep:before{position:absolute;inset:0 50% 50% 0;background:conic-gradient(from 10deg at 100% 100%,transparent 0 66deg,#ffa80070 87deg,transparent 90deg);content:"";transform-origin:100% 100%}.directory-sweep:after{position:absolute;top:50%;left:50%;width:48%;height:2px;background:linear-gradient(90deg,var(--orange),transparent);box-shadow:0 0 18px var(--orange);content:"";transform-origin:left center}
.directory-ping{width:10px;height:10px;background:var(--orange);border-radius:50%;box-shadow:0 0 20px var(--orange)}.directory-ping:after{position:absolute;inset:-8px;border:1px solid var(--orange);border-radius:inherit;content:"";animation:directoryPulse 2.3s ease-out infinite}.directory-radar .ping-one{top:25%;left:29%}.directory-radar .ping-two{right:21%;bottom:29%;animation-delay:1.1s}
.directory-person{z-index:2;display:grid;min-width:54px;min-height:54px;padding:5px;place-items:center;align-content:center;color:var(--ink);background:#140a1be8;border:1px solid #ffa80075;border-radius:50%;box-shadow:0 8px 25px #0008;animation:directoryNodeA 6.3s ease-in-out infinite}.directory-person b{position:relative;width:13px;height:13px;color:transparent;background:var(--orange);border-radius:50%;box-shadow:0 0 14px #ffa800}.directory-person b:after{position:absolute;top:10px;left:-4px;width:21px;height:13px;background:var(--orange);border-radius:12px 12px 5px 5px;content:""}.directory-person small{margin-top:13px;color:var(--muted);font-size:.46rem;font-weight:850}.person-dj{top:8%;left:43%}.person-live{top:23%;right:8%;animation:directoryNodeB 7.1s -1.2s ease-in-out infinite}.person-food{right:10%;bottom:19%;animation:directoryNodeC 6.6s -2.4s ease-in-out infinite}.person-tech{bottom:18%;left:9%;animation:directoryNodeB 7.4s -3.5s ease-in-out infinite reverse}
.directory-score{z-index:3;top:50%;left:50%;display:grid;width:112px;aspect-ratio:1;place-items:center;align-content:center;background:#0c0610f2;border:2px solid var(--orange);border-radius:50%;box-shadow:0 0 0 7px #ffa8000b,0 0 45px #ffa8004d;transform:translate(-50%,-50%)}.directory-score:before,.directory-score:after{position:absolute;border-radius:50%;content:"";pointer-events:none}.directory-score:before{inset:-9px;border:1px solid #ffa80052;animation:directoryHalo 2.8s ease-in-out infinite}.directory-score:after{inset:-18px;border:1px dashed #ffa80038;animation:directoryRotate 12s linear infinite}.directory-score small{color:var(--orange);font-size:.54rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.directory-score strong{font:950 2.1rem/1 "Arial Black"}.directory-score strong b{font:inherit}.directory-score strong span{color:var(--orange);font-size:.82rem}.directory-score.is-complete{color:#8dffb3;background:#05190ff5;border-color:#5cf08d;box-shadow:0 0 0 10px #5cf08d14,0 0 70px #5cf08d90}.directory-score.is-complete small,.directory-score.is-complete strong,.directory-score.is-complete strong span{color:#67f59a}.directory-score.is-complete:before,.directory-score.is-complete:after{border-color:#5cf08d8a}
.directory-celebration{z-index:5;right:15%;bottom:7%;left:15%;display:grid;gap:2px;padding:10px 12px;text-align:center;background:linear-gradient(90deg,#1d1025e8,#301e15f2,#1d1025e8);border:1px solid #ffa800b8;border-radius:999px;box-shadow:0 18px 42px #0009,0 0 32px #ffa8002e;opacity:0;transform:translateY(9px) scale(.96);transition:opacity .7s ease,transform .7s ease}.directory-celebration small{color:var(--orange);font-size:.48rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.directory-celebration strong{font-size:.82rem}.directory-score.is-complete~.directory-celebration{border-color:#5cf08dcc;opacity:1;transform:translateY(0) scale(1)}
@keyframes directoryRotate{to{transform:rotate(360deg)}}@keyframes directoryPulse{from{opacity:.9;transform:scale(.35)}to{opacity:0;transform:scale(2.4)}}@keyframes directoryHalo{0%,100%{opacity:.35;transform:scale(.96)}50%{opacity:1;transform:scale(1.07)}}@keyframes directoryNodeA{0%,100%{transform:translate(0) scale(1)}30%{transform:translate(13px,9px) scale(.95)}60%{transform:translate(-8px,18px) scale(1.08)}}@keyframes directoryNodeB{0%,100%{transform:translate(0) scale(1)}35%{transform:translate(-17px,7px) scale(1.07)}65%{transform:translate(-6px,-16px) scale(.95)}}@keyframes directoryNodeC{0%,100%{transform:translate(0) scale(1)}30%{transform:translate(10px,-15px) scale(.96)}60%{transform:translate(18px,3px) scale(1.08)}}
.filter-panel{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;padding:15px;background:linear-gradient(145deg,#25132ed9,#100815df);border:1px solid #ffffff25;border-radius:22px;box-shadow:inset 0 1px #ffffff0c,0 30px 90px #0008;backdrop-filter:blur(24px)}.filter-panel label{display:grid;gap:7px;min-width:0;padding:10px 12px;background:#110817ad;border:1px solid var(--line);border-radius:12px}.filter-panel span{color:var(--muted);font-size:.58rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.filter-panel input,.filter-panel select{width:100%;min-height:28px;padding:0;color:var(--ink);background:transparent;border:0;outline:0;font-weight:750}.filter-panel option{background:#170b1e}.filter-panel label:focus-within{border-color:var(--orange);box-shadow:0 0 0 3px #ffa80017}.filter-panel button,.filter-panel>a{display:grid;min-height:58px;padding:0 14px;place-items:center;border-radius:12px;font-weight:900}.filter-panel button{color:#160a18;background:var(--orange);border:0;cursor:pointer}.filter-panel>a{background:#ffffff06;border:1px solid var(--line);font-size:.72rem}
.results-head{display:flex;margin:58px 0 20px;align-items:end;justify-content:space-between;gap:20px}.results-head div{display:flex;align-items:end;gap:14px}.results-head span{color:var(--orange);font:950 4rem/.8 "Arial Black";text-shadow:0 3px #4b2600,0 12px 30px #000}.results-head h2{margin:0;font-size:1.65rem}.results-head p{margin:0;color:var(--muted);font-size:.75rem}
.provider-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.provider-card{overflow:hidden;background:linear-gradient(145deg,#211129ed,#0f0714f2);border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 60px #0005;transition:.25s}.provider-card:hover{border-color:#ffa80080;transform:translateY(-5px)}.provider-visual{position:relative;display:block;height:215px;overflow:hidden;background:radial-gradient(circle at 70% 20%,#693061,#211029 55%,#0c0611)}.provider-visual img{width:100%;height:100%;object-fit:cover;transition:.5s}.provider-card:hover img{transform:scale(1.04)}.provider-visual>span{display:grid;width:100%;height:100%;place-items:center;color:var(--orange);font:950 5rem "Arial Black"}.provider-visual b{position:absolute;top:13px;right:13px;padding:7px 10px;color:#10201d;background:var(--mint);border-radius:999px;font-size:.61rem}.provider-copy{padding:20px}.provider-copy small{color:var(--orange);font-size:.62rem;font-weight:850;text-transform:uppercase}.provider-copy h3{margin:7px 0 5px;font:950 1.75rem "Arial Black";letter-spacing:-.04em}.provider-copy>strong{display:block;font-size:.78rem}.provider-copy p{display:-webkit-box;min-height:58px;margin:13px 0;color:var(--muted);overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;font-size:.75rem;line-height:1.55}.provider-copy ul{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}.provider-copy li{padding:6px 8px;background:#ffffff08;border-radius:999px;color:#d8cbdc;font-size:.58rem}.profile-link{display:grid;min-height:43px;margin-top:16px;place-items:center;color:#160a18;background:var(--orange);border-radius:10px;font-size:.72rem;font-weight:900}.empty-results{grid-column:1/-1;display:grid;min-height:280px;padding:30px;place-items:center;align-content:center;text-align:center;background:#ffffff04;border:1px dashed var(--line);border-radius:22px}.empty-results strong{font-size:1.5rem}.empty-results p{color:var(--muted)}.empty-results a{padding:12px 16px;background:var(--orange);border-radius:10px;color:#160a18;font-weight:850}
.profile-main{padding-top:54px}.profile-cover{position:relative;min-height:460px;overflow:hidden;padding:54px;display:flex;align-items:flex-end;background:radial-gradient(circle at 75% 15%,#6b2d6599,transparent 38rem),#190c20;border:1px solid var(--line);border-radius:28px;box-shadow:0 35px 90px #0009}.profile-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.6}.profile-cover:after{position:absolute;inset:0;background:linear-gradient(90deg,#09040df5 0,#09040da3 58%,transparent),linear-gradient(0deg,#09040dc7,transparent 65%);content:""}.profile-cover-copy{position:relative;z-index:1;max-width:780px}.profile-cover small{color:var(--orange);font-weight:900}.profile-title{margin:10px 0 12px;font-size:clamp(3.2rem,7vw,6.8rem)}.profile-cover h2{margin:0;font-size:1.15rem}.profile-cover p{max-width:720px;color:#ddd1df;line-height:1.7}.profile-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.profile-actions a,.profile-actions button{min-height:46px;padding:0 17px;border-radius:11px;cursor:pointer;font-weight:900}.profile-actions button{color:#160a18;background:var(--orange);border:0}.profile-actions a{display:grid;place-items:center;background:#ffffff0b;border:1px solid var(--line)}
.profile-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:15px;margin-top:15px}.profile-panel{padding:26px;background:#170b1edb;border:1px solid var(--line);border-radius:22px}.profile-panel h2{margin:0 0 17px}.profile-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.profile-facts div{padding:15px;background:#ffffff06;border-radius:13px}.profile-facts small,.profile-facts strong{display:block}.profile-facts small{color:var(--muted);font-size:.62rem}.profile-facts strong{margin-top:5px}.media-stack{display:grid;gap:12px}.media-stack iframe,.media-stack video,.media-stack audio{width:100%;border:0;border-radius:15px}.review-list{display:grid;gap:9px}.review-list blockquote{margin:0;padding:16px;background:#ffffff06;border-left:3px solid var(--orange);border-radius:0 12px 12px 0}.review-list p{margin:0;color:#eee3ef;line-height:1.6}.review-list footer{margin-top:9px;color:var(--orange);font-size:.64rem;font-weight:850}.badge-code{width:100%;min-height:110px;margin-top:14px;padding:12px;color:#e7d9eb;background:#09040d;border:1px solid var(--line);border-radius:11px;resize:none}.profile-qr{display:grid;width:174px;height:174px;padding:12px;place-items:center;background:#fff;border-radius:18px}
.modal-layer{position:fixed;z-index:100;inset:0;display:grid;padding:18px;place-items:center;background:#08030bcc;backdrop-filter:blur(14px)}.modal-layer[hidden]{display:none}.contact-modal{position:relative;width:min(560px,100%);padding:28px;background:linear-gradient(145deg,#281331,#100715);border:1px solid #ffa80080;border-radius:22px;box-shadow:0 40px 100px #000}.modal-close{position:absolute;top:13px;right:13px;width:40px;height:40px;color:var(--ink);background:#ffffff08;border:1px solid var(--line);border-radius:10px}.contact-modal form{display:grid;gap:12px}.contact-modal label{display:grid;gap:6px}.contact-modal input,.contact-modal textarea{width:100%;padding:12px;color:var(--ink);background:#09040d;border:1px solid var(--line);border-radius:11px}.contact-modal textarea{min-height:130px;resize:vertical}.contact-modal form button{min-height:48px;color:#160a18;background:var(--orange);border:0;border-radius:11px;font-weight:900}.form-message{min-height:20px;color:#ff9ba7;font-size:.72rem}.form-message.is-success{color:var(--mint)}
.editor-main{max-width:1120px}.editor-hero h1{font-size:clamp(3.3rem,7vw,6rem)}.profile-editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:35px}.editor-card{padding:25px;background:#180c20dc;border:1px solid var(--line);border-radius:22px}.editor-card.wide{grid-column:1/-1}.editor-card h2{margin:0 0 7px}.editor-card>p{margin:0 0 20px;color:var(--muted);font-size:.78rem;line-height:1.55}.profile-editor label{display:grid;gap:7px;margin-top:13px}.profile-editor label>span{font-size:.68rem;font-weight:850}.profile-editor input,.profile-editor textarea{width:100%;padding:12px;color:var(--ink);background:#09040d;border:1px solid var(--line);border-radius:11px}.profile-editor textarea{min-height:110px;resize:vertical}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.category-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.category-checks label,.toggle-row{display:flex!important;align-items:center;gap:9px;padding:11px;background:#ffffff05;border:1px solid var(--line);border-radius:10px}.category-checks input,.toggle-row input{width:auto}.editor-submit{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px;background:#170b1e;border:1px solid var(--line);border-radius:20px}.editor-submit button{min-height:52px;padding:0 24px;color:#160a18;background:var(--orange);border:0;border-radius:11px;font-weight:900}.editor-preview{display:flex;gap:10px;flex-wrap:wrap}.editor-preview a{padding:11px 14px;background:#ffffff08;border:1px solid var(--line);border-radius:10px;font-size:.72rem;font-weight:850}
@media(max-width:1100px){.public-nav{position:fixed;top:82px;right:16px;left:16px;display:none;padding:14px;background:#160a1cf2;border:1px solid var(--line);border-radius:18px;box-shadow:0 30px 90px #000;backdrop-filter:blur(25px)}.public-nav.is-open{display:grid;gap:6px}.public-nav a{width:100%;min-height:46px}.public-menu{display:grid}.public-header{grid-template-columns:auto 1fr}.header-actions{justify-self:end}.directory-hero{grid-template-columns:1fr}.directory-radar{width:min(330px,75vw);margin-top:22px}.filter-panel{grid-template-columns:repeat(3,1fr)}.provider-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.public-header{min-height:70px;padding:10px 9px}.public-brand{height:42px}.public-brand span{width:66px;height:38px;font-size:1rem}.public-brand b{width:62px;height:32px;font-size:1rem}.header-actions .juhu-language-switch,.register-action{display:none!important}.header-actions>a{min-height:38px;padding:0 10px;font-size:.64rem}.public-menu{width:38px;height:38px}.public-nav{top:70px;right:9px;left:9px}.directory-main,.profile-main,.editor-main{width:calc(100% - 22px);padding:42px 0 80px}.directory-hero{min-height:0}.directory-hero h1{font-size:clamp(2.8rem,13vw,4.4rem)}.filter-panel{grid-template-columns:1fr 1fr;padding:10px}.filter-panel label{padding:9px}.filter-panel button,.filter-panel>a{min-height:50px}.results-head{align-items:flex-start;flex-direction:column;margin-top:38px}.results-head p{display:none}.provider-grid{grid-template-columns:1fr}.provider-visual{height:195px}.profile-cover{min-height:480px;padding:25px 20px}.profile-layout{grid-template-columns:1fr}.profile-facts{grid-template-columns:1fr 1fr}.profile-editor{grid-template-columns:1fr}.editor-card.wide,.editor-submit{grid-column:auto}.category-checks{grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr}.editor-submit{align-items:stretch;flex-direction:column}}

html{scroll-padding-top:104px}.public-brand b{text-shadow:0 2px 0 #5b2b00aa,0 4px 9px #0008}
@media(min-width:1101px){
  .public-header{grid-template-columns:1fr auto 1fr;padding-inline:clamp(16px,2.1vw,34px)}
  .public-brand{justify-self:start}
  .public-nav{justify-self:center;gap:6px}
  .public-nav a{width:150px;min-height:46px;font-size:.9rem;text-align:center}
  .header-actions{justify-self:end}
  .header-actions>a{width:132px;min-height:43px;padding-inline:12px;text-align:center}
}
@media(min-width:1101px) and (max-width:1340px){
  .public-nav a{width:126px;font-size:.78rem}
  .register-action{display:none}
}

/* Medien, Profilaktionen und Verfügbarkeitskalender */
.media-uploader{margin-top:14px;padding:14px;background:rgba(6,2,9,.46);border:1px solid var(--line);border-radius:15px}
.upload-button{display:grid;min-height:46px;padding:0 14px;place-items:center;color:var(--ink);background:rgba(255,255,255,.055);border:1px dashed rgba(255,168,0,.55);border-radius:11px;cursor:pointer}
.upload-button:hover{color:#fff;background:rgba(255,168,0,.13);border-color:var(--orange);box-shadow:0 14px 34px rgba(0,0,0,.45)}
.upload-button input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}
.image-cropper{display:grid;gap:10px;margin-top:12px}.image-cropper[hidden]{display:none}.image-cropper canvas{width:100%;aspect-ratio:16/9;background:#050208;border:1px solid var(--line);border-radius:12px}.crop-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.crop-controls label{margin:0}.crop-controls input{padding:0}
.media-action{min-height:45px;color:#fff;background:var(--orange);border:0;border-radius:10px;font-weight:900;text-shadow:0 2px 2px #000,0 4px 10px #000b}.media-uploader video{width:100%;max-height:260px;margin-top:12px;border-radius:11px}.media-uploader audio{width:100%;margin-top:12px}.media-message{min-height:22px;margin:12px 0 0!important;color:#ff9ba7}.media-message.is-success{color:var(--mint)}
.availability-card{overflow:hidden}.availability-head{display:flex;align-items:end;justify-content:space-between;gap:18px}.availability-head nav{display:flex;gap:6px}.availability-head nav a{display:grid;min-width:42px;height:42px;padding:0 12px;place-items:center;background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:10px;font-weight:850}.availability-head nav a:hover{color:#160a18;background:var(--orange);border-color:var(--orange)}
.availability-legend{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.availability-legend span{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;background:rgba(255,255,255,.04);border-radius:999px;font-size:.63rem;font-weight:800}.availability-legend span:before{width:9px;height:9px;border-radius:50%;content:""}.availability-legend .free:before{background:#65ded2}.availability-legend .partial:before{background:#ffcf59}.availability-legend .booked:before{background:#e86b77}
.availability-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.availability-weekday{padding:6px;color:var(--muted);font-size:.62rem;text-align:center}.availability-day{display:grid;min-height:96px;padding:9px;align-content:start;gap:5px;color:var(--ink);text-align:left;background:rgba(7,3,10,.66);border:1px solid var(--line);border-radius:12px;cursor:pointer}.availability-day strong{font:900 1rem "Arial Black"}.availability-day small{overflow:hidden;color:var(--muted);font-size:.56rem;line-height:1.3;text-overflow:ellipsis}.availability-day:hover:not(:disabled),.availability-day.is-selected{border-color:var(--orange);box-shadow:0 0 0 3px rgba(255,168,0,.12)}.availability-day.is-free{background:linear-gradient(145deg,rgba(101,222,210,.16),rgba(7,3,10,.72));border-color:rgba(101,222,210,.48)}.availability-day.is-free small{color:#aef8ef}.availability-day.is-booked{background:linear-gradient(145deg,rgba(232,107,119,.17),rgba(7,3,10,.75));border-color:rgba(232,107,119,.5)}.availability-day.is-booked small{color:#ffb5bd}.availability-day:disabled{cursor:not-allowed;opacity:.72}.availability-day.is-empty{visibility:hidden}
.availability-editor{display:grid;grid-template-columns:1.3fr repeat(2,.7fr) 1.7fr auto auto;align-items:end;gap:9px;margin-top:14px;padding:14px;background:rgba(255,168,0,.055);border:1px solid rgba(255,168,0,.25);border-radius:14px}.availability-editor[hidden]{display:none}.availability-editor>strong{align-self:center;color:var(--orange)}.availability-editor label{margin:0}.availability-editor button{min-height:46px;padding:0 14px;color:#fff;background:var(--orange);border:0;border-radius:10px;font-weight:900;text-shadow:0 2px 2px #000,0 4px 10px #000b}.availability-editor button.secondary{background:rgba(255,255,255,.06);border:1px solid var(--line)}.availability-editor p{grid-column:1/-1;min-height:18px;margin:0;color:#ff9ba7;font-size:.68rem}.availability-editor p.is-success{color:var(--mint)}
.editor-preview>a,.editor-preview>button{display:grid;width:174px;min-height:52px;padding:0 15px;place-items:center;border-radius:11px;font-size:.8rem;font-weight:900;text-align:center}
.editor-preview>a{background:rgba(255,255,255,.08);border:1px solid var(--line)}
.editor-preview>button{color:#fff;background:var(--orange);border:0;text-shadow:0 2px 2px #000,0 4px 10px #000b}
.public-nav a:hover,.public-nav a.is-active{color:#080309;background:var(--orange);text-shadow:none}
.header-actions>a,.filter-panel button,.profile-link,.profile-actions button,.contact-modal form button,.primary-action{color:#fff;text-shadow:0 2px 2px #000,0 4px 10px #000c}
.provider-card{position:relative}.provider-hover-preview{position:absolute;z-index:5;inset:12px;display:grid;padding:22px;align-content:end;background:linear-gradient(0deg,rgba(8,3,11,.98),rgba(17,7,22,.9));border:1px solid var(--orange);border-radius:16px;box-shadow:0 28px 70px #000c;opacity:0;pointer-events:none;transform:translateY(8px);transition:.22s}.provider-copy h3:hover~.provider-hover-preview,.provider-copy h3:focus-within~.provider-hover-preview{opacity:1;transform:none}.provider-hover-preview strong{font:950 1.65rem "Arial Black";color:var(--orange)}.provider-hover-preview p{min-height:0;margin:8px 0 0;color:var(--ink)}
.public-availability{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.public-availability>div{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:10px;padding:10px;background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:12px}.public-availability time{display:grid;width:46px;height:48px;place-content:center;color:#160a18;text-align:center;background:var(--orange);border-radius:10px}.public-availability time strong{font:950 1.15rem/1 "Arial Black"}.public-availability time span{font-size:.55rem}.public-availability p{display:grid;margin:0}.public-availability p strong{font-size:.68rem}.public-availability p span{margin-top:3px;color:var(--mint);font-size:.6rem}
@media(max-width:900px){.availability-editor{grid-template-columns:1fr 1fr}.availability-editor>strong,.availability-editor label:last-of-type,.availability-editor p{grid-column:1/-1}}
@media(max-width:700px){.crop-controls{grid-template-columns:1fr}.availability-calendar{gap:3px}.availability-day{min-height:72px;padding:6px}.availability-day small{font-size:.47rem}.availability-editor{grid-template-columns:1fr}.availability-editor>*{grid-column:auto!important}.editor-preview>a,.editor-preview>button{width:100%}.provider-hover-preview{display:none}.public-availability{grid-template-columns:1fr}}
