
:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#f7f5ff;background:#0d0c23}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:linear-gradient(90deg,rgba(8,10,28,.83),rgba(15,12,40,.57)),url('/studio-background.jpg') center center / cover fixed no-repeat}main{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.brand{background:rgba(7,10,27,.88);backdrop-filter:blur(16px);border-right:1px solid #ffffff19;padding:36px 20px;display:flex;flex-direction:column;gap:8px;position:sticky;top:0;height:100vh}.brand strong{font-size:26px;letter-spacing:-.055em;white-space:nowrap}.brand em{color:#8b6cff;font-style:normal}.brand small{font-size:9px;letter-spacing:.18em;color:#c8c5df}.brand nav{display:grid;gap:10px;margin-top:54px}.brand a{display:block;padding:14px;border-radius:12px;text-decoration:none;color:#eae8ff}.brand a:first-child{background:linear-gradient(115deg,#573cf6,#416eff)}.brand a:hover{background:#6252ad70}.brand-bottom{margin-top:auto;font-size:12px;letter-spacing:.25em;line-height:1.6;color:#c3c2d9}.workspace{min-width:0;padding:44px clamp(18px,4vw,65px) 30px;max-width:1500px;width:100%;margin:auto}header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:45px}.eyebrow{font-size:11px;letter-spacing:.22em;color:#c9c5ff;font-weight:750}h1{font-size:clamp(37px,4.5vw,66px);letter-spacing:-.055em;line-height:1.06;margin:14px 0;text-shadow:0 3px 20px #0d0c2999}.dot{color:#9370ff}p{color:#ded9ed;line-height:1.5;margin:7px 0}.pill{border:1px solid #a8a0e45c;border-radius:24px;padding:12px 16px;background:#18183399;color:#f4f2ff;white-space:nowrap}.panel{background:rgba(18,19,47,.88);border:1px solid #ffffff29;box-shadow:0 20px 55px #05051366;backdrop-filter:blur(22px);border-radius:19px;padding:25px;margin-bottom:22px}.bar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}h2{font-size:23px;margin:0}.nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.nav strong{min-width:155px;text-align:center;font-size:13px}button{border:0;background:linear-gradient(115deg,#5144fa,#8754fa);color:white;border-radius:10px;padding:12px 18px;font-weight:700;font:inherit;cursor:pointer;transition:filter .2s,transform .2s}button:hover{filter:brightness(1.13);transform:translateY(-1px)}button.secondary{background:#343555;color:#f5f3ff}button.danger{background:#663043;color:#ffe5e8}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:24px}.daycol{min-height:240px;background:rgba(11,13,37,.5);border:1px solid #ffffff17;border-radius:12px;padding:10px;min-width:0}.dayhead{font-size:12px;font-weight:750;border-bottom:1px solid #ffffff26;padding-bottom:10px;margin-bottom:12px}.dayhead small{display:block;color:#b1b0d0;font-weight:400;margin-top:5px}.booking{background:#4a348a;border-left:4px solid #a88aff;border-radius:8px;padding:9px;margin:7px 0;font-size:12px;overflow-wrap:anywhere}.booking:nth-of-type(3n){background:#164d60;border-color:#60ddda}.booking b{display:block;margin-bottom:5px}.booking[role="button"]{cursor:pointer}.booking[role="button"]:focus-visible{outline:3px solid #a88aff;outline-offset:2px}.booking[role="button"]:hover{filter:brightness(1.25)}.free{font-size:12px;color:#9b9bb8}.restriction{background:#614024;border-left:4px solid #ffb453;border-radius:8px;padding:8px;margin:7px 0;font-size:12px}.restriction b{display:block;margin-bottom:4px}.legend{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;color:#c5c2db;margin-top:18px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:23px 0}label{display:flex;flex-direction:column;gap:8px;color:#e8e4f9;font-size:13px;font-weight:650}input,select,textarea{background:#171832;border:1px solid #565477;color:#fff;width:100%;border-radius:10px;padding:12px;font:inherit;color-scheme:dark}input:focus,select:focus,textarea:focus{outline:2px solid #8b6cff}textarea{resize:vertical;min-height:95px}.wide{grid-column:1/-1}.actions{display:flex;flex-wrap:wrap;gap:10px}#message{margin-top:14px;color:#ffc0ca;white-space:pre-wrap}#success{background:#173d39;border:1px solid #57cdb0;border-radius:13px;padding:18px;margin-top:18px}#success h3{margin:0 0 8px;color:#8effd8}.pin-display{font-size:34px;font-weight:850;letter-spacing:.2em;color:#9cfbdc;margin:15px 0}details{margin-top:15px}summary{cursor:pointer;color:#b8aaff;font-weight:700}.bookingnotes p{white-space:pre-wrap;font-size:12px}.adminrow{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:12px}#adminMessage{margin-top:12px;color:#ffd0a1}footer{font-size:12px;text-align:center;color:#c0bcd3;padding:12px}[hidden]{display:none!important}@media(max-width:1100px){main{grid-template-columns:190px minmax(0,1fr)}.brand{padding:28px 14px}.brand strong{font-size:22px}.calendar{overflow-x:auto;grid-template-columns:repeat(7,minmax(140px,1fr))}}@media(max-width:720px){main{display:block}.brand{height:auto;position:static;padding:15px 20px}.brand nav{display:flex;margin-top:12px;gap:5px;flex-wrap:wrap}.brand nav a{font-size:12px;padding:10px}.brand-bottom{display:none}.workspace{padding:25px 14px}header{display:block;margin-bottom:25px}.pill{display:inline-block;margin-top:20px}.panel{padding:17px}.fields{grid-template-columns:1fr}.calendar{display:flex;overflow-x:auto}.daycol{min-width:175px}.nav strong{min-width:100px}h1{font-size:39px}}
/* Linke Navigation leicht transparent */
.brand {
    background: rgba(15, 18, 38, 0.30);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* Optional: ganz unten an die bestehende style.css anfuegen. */
.jump-label { display:inline-flex; align-items:center; gap:6px; font-size:12px; color:inherit; }
.jump-label select, .jump-label input { min-height:36px; border-radius:9px; padding:6px; max-width:125px; }
.nav { flex-wrap:wrap; gap:8px; }
.daycol button:disabled { opacity:.4; cursor:not-allowed; }

/* Versteckte Admin-Oberflaeche bleibt auch bei CSS-Regeln ausgeblendet */
#adminPanel[hidden], #adminNavLink[hidden] { display: none !important; }
/* Calendar: remaining availability in green, booked slots in red. */
.release.free-window{background:rgba(21,115,68,.36)!important;border:1px solid rgba(91,235,151,.62)!important;border-left:4px solid #51e49a!important;color:#eafff1!important;border-radius:9px;padding:10px;margin:7px 0}
.release.free-window b{color:#b5ffd1!important;display:block}
.release.free-window span{display:block;font-size:12px;margin-top:3px}
.booking,.booking:nth-of-type(3n){background:rgba(155,39,56,.55)!important;border:1px solid rgba(255,123,133,.56)!important;border-left:4px solid #ff6476!important;color:#fff0f1!important}
.booking b{color:#ffe2e5!important}

/* Larger booking date picker and half-hour time dropdowns */
#day{cursor:pointer;min-height:48px;font-size:16px}
#datePicker{grid-column:1/-1;background:#1a1b3b;border:1px solid #8275c2;border-radius:16px;padding:18px;box-shadow:0 15px 35px #0008;z-index:10}
.date-picker-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.date-picker-head strong{font-size:20px;text-transform:capitalize}
.date-picker-head button{padding:9px 14px}
.date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
.date-weekday{text-align:center;font-size:12px;color:#bcb6e2;font-weight:700;padding:7px 0}
.date-cell{min-height:50px;padding:7px 3px;background:#39365f;border:1px solid #736ca5;border-radius:9px;font-weight:700;font-size:16px}
.date-cell:not(:disabled):hover{background:#6050b5}
.date-cell:disabled{opacity:.27;cursor:not-allowed;transform:none}
.date-cell.selected{outline:3px solid #a68aff;background:#5840a1}
.date-hint{font-size:12px;margin-top:14px}
#start,#end{min-height:48px;font-size:16px}
@media(max-width:720px){#datePicker{padding:10px}.date-grid{gap:4px}.date-cell{min-height:43px;font-size:14px}}
