/* sistema visual final */
body:not([data-calica-base]){background:#080808;position:relative}
body:not([data-calica-base])::before{content:"";position:fixed;inset:0;z-index:-2;background-image:linear-gradient(rgba(4,4,4,.50),rgba(4,4,4,.62)),var(--calica-secondary-texture);background-size:cover;background-position:center;background-attachment:fixed}
body:not([data-calica-base])::after{content:"";position:fixed;inset:0;z-index:-1;background:rgba(0,0,0,.18);pointer-events:none}
.top{background:rgba(8,8,8,.90);backdrop-filter:blur(7px)}
.page{position:relative}
.visual-heading{position:relative;overflow:hidden;padding:34px 32px;margin:18px 0 38px;border:1px solid rgba(255,255,255,.12);background:rgba(10,10,10,.72);box-shadow:0 18px 45px rgba(0,0,0,.20)}
.visual-heading:before,.visual-heading:after{content:none}
.visual-heading h1{margin:.1em 0;font-size:clamp(2.5rem,6vw,6rem)}
.section-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.9fr);gap:42px;align-items:stretch;margin-bottom:48px}
.section-hero .copy{align-self:center}
.section-hero.no-photo{grid-template-columns:1fr;display:block}.section-hero.no-photo .copy{max-width:900px}
.section-photo{display:block;width:100%;height:100%;min-height:520px;max-height:720px;object-fit:cover;border:1px solid rgba(255,255,255,.14)}
.section-photo.wide{min-height:380px;max-height:620px}
.category-card,.team-card,.card,.day,.pedal{background:rgba(12,12,12,.82)}
.work-card{background:rgba(9,9,9,.34);padding:26px 18px}.artist-row h2{font-size:clamp(1.65rem,3.6vw,3.15rem)}.work-label{font-size:.72rem;margin:12px 0 8px}.work-link,.artist-link{font-size:.88rem}.sp-icon{width:19px;height:19px}.player{margin-top:12px;max-width:680px}.player iframe{max-height:152px}
.calendar .day{color:var(--gray)}.calendar .day strong{color:var(--gray)}.calendar .day .promo{color:var(--orange)}.calendar .day.unavailable{opacity:.38}.calendar .availability{font-size:.7rem;margin-top:7px;color:#aaa}.calendar .day.clickable:hover .availability{color:var(--paper)}
.booking-panel.open{display:block;position:fixed;right:0;top:0;bottom:0;width:min(520px,94vw);margin:0;padding:88px 28px 32px;background:#101010;border-left:1px solid #3a3a3a;z-index:60;overflow:auto;box-shadow:-20px 0 50px rgba(0,0,0,.45)}
.booking-close{position:absolute;right:18px;top:18px;background:transparent;border:1px solid #444;color:var(--paper);font-size:1.6rem;width:42px;height:42px;cursor:pointer}.booking-panel.open .form{max-width:none}.booking-help{color:var(--gray);font-size:.9rem}.slot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:20px 0}.slot-btn{border:1px solid #444;background:#151515;color:var(--paper);padding:11px 7px;cursor:pointer;font:inherit;font-size:.8rem}.slot-btn:hover:not(:disabled){border-color:var(--orange)}.slot-btn.selected{background:var(--orange);color:#111;border-color:var(--orange);font-weight:900}.slot-btn.busy{opacity:.42;cursor:not-allowed;font-size:.64rem}.selection-summary{min-height:42px;padding:12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:18px;color:var(--gray)}.selection-summary strong,.price-estimate{color:var(--paper)}.price-estimate{font-weight:800;margin:6px 0 14px}.booking-message{margin-top:14px;color:var(--orange);font-weight:700}.admin-page{max-width:1180px}.admin-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:20px 0 30px}.admin-controls label{display:grid;gap:8px;color:var(--gray)}.admin-controls input,.admin-note{background:#111;color:var(--paper);border:1px solid #444;padding:11px}.admin-slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.admin-slot{border:1px solid var(--line);padding:16px;background:rgba(10,10,10,.82)}.admin-slot.pending{border-color:#9d6d2e}.admin-slot.reserved{border-color:#555}.admin-slot.blocked{opacity:.72}.admin-slot-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}.admin-slot-head span{color:var(--orange);font-size:.75rem;font-weight:800}.admin-client{font-weight:800}.admin-comment{color:var(--gray);font-size:.88rem;margin:7px 0}.admin-note{width:100%;box-sizing:border-box;margin:10px 0}.admin-actions{display:flex;gap:7px;flex-wrap:wrap}.admin-actions .btn{font-size:.68rem;padding:8px 10px}.admin-upcoming{margin-top:48px}.admin-booking{padding:15px 0;border-bottom:1px solid var(--line);display:grid;gap:5px}.admin-booking>div:not(:first-child){color:var(--gray);font-size:.88rem}
@media(max-width:820px){.section-hero{grid-template-columns:1fr}.section-photo{min-height:340px;max-height:520px}.admin-slots{grid-template-columns:1fr}}
/* Agenda 2.0 */
.calendar .day small{display:block;margin-top:8px;font-size:.66rem;color:#777;font-weight:600;letter-spacing:.02em}.calendar button.day{font:inherit;text-align:left}.calendar .day.disabled{opacity:.28;cursor:not-allowed}.slot-help{color:var(--gray);font-size:.9rem;line-height:1.5}.slot{border:1px solid #3b3b3b;background:#131313;color:var(--paper);padding:12px 8px;cursor:pointer;font:inherit;font-size:.78rem;font-weight:800;letter-spacing:.03em}.slot:hover:not(:disabled){border-color:var(--orange)}.slot.selected{background:var(--orange);border-color:var(--orange);color:#111}.slot.busy,.slot:disabled{opacity:.38;cursor:not-allowed}.price-estimate{font-size:1.05rem;font-weight:900;color:var(--orange);min-height:30px}.checkline{display:flex;align-items:center;gap:10px;color:var(--paper);font-size:.88rem}.checkline input{width:auto}.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.admin-link{color:#666!important;font-size:.72rem;letter-spacing:.12em}.admin-toolbar{display:flex;gap:10px;align-items:center;margin-bottom:30px}.admin-calendar{margin-bottom:18px}.admin-slots{max-width:760px;margin-bottom:54px;grid-template-columns:repeat(3,minmax(0,1fr))}.admin-slots h3{grid-column:1/-1;text-transform:uppercase}.admin-bookings{display:grid;gap:12px}.admin-booking{border:1px solid #292929;background:rgba(10,10,10,.76);padding:20px;display:block}.admin-booking h3{margin:0;font-size:1.25rem}.admin-booking p{margin:.55em 0}.status{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;padding:6px 8px;border:1px solid #444}.status.pending{color:var(--orange);border-color:var(--orange)}.status.confirmed{color:#ddd}.status.completed{color:#777}.status.cancelled{color:#666;text-decoration:line-through}.slot.blocked{border-style:dashed;color:#888}.slot.reserved{border-color:#666}.slot.pending{border-color:var(--orange);color:var(--orange)}.muted{color:var(--gray)}
.recording-options{display:grid;gap:12px;margin:18px 0 30px}.recording-option{border:1px solid var(--line);background:rgba(10,10,10,.78)}.recording-option summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:24px;align-items:center;padding:20px 22px}.recording-option summary::-webkit-details-marker{display:none}.recording-option summary span{display:grid;gap:6px}.recording-option summary strong{font-size:1.15rem}.recording-option summary small{color:var(--gray);font-size:.88rem;max-width:720px;line-height:1.45}.recording-option summary b{color:var(--orange);white-space:nowrap;font-size:.82rem}.recording-table-wrap{padding:0 22px 22px}.recording-table-wrap .price{margin:0;max-width:560px}.recording-note{color:var(--gray);font-size:.9rem}.recording-choice{border:0;padding:0;margin:18px 0}.recording-choice legend{font-weight:900;margin-bottom:10px}.recording-choice label{display:flex;gap:10px;align-items:flex-start;border:1px solid #3b3b3b;padding:11px 12px;margin-bottom:8px;cursor:pointer;background:#111}.recording-choice label:has(input:checked){border-color:var(--orange);background:#16110d}.recording-choice input{margin-top:4px;width:auto}.recording-choice span{display:grid;gap:3px}.recording-choice small{color:var(--gray);line-height:1.35}.price-estimate span{color:var(--gray)}
.admin-new{margin:0 0 44px;padding:24px;border:1px solid var(--line);background:rgba(9,9,9,.72)}.admin-new-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.admin-new-head h2{margin:.25em 0}.manual-form{margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}.manual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}.manual-grid label{display:grid;gap:7px;color:var(--gray);font-size:.82rem}.manual-grid input,.manual-grid select,.manual-form textarea{width:100%;box-sizing:border-box;background:#111;color:var(--paper);border:1px solid #444;padding:11px;font:inherit}.manual-form textarea{margin:8px 0 14px}.manual-slots{margin:12px 0 18px}.manual-summary{padding:14px;border:1px solid var(--line);background:#0d0d0d;color:var(--gray);line-height:1.55;margin-bottom:14px}.manual-summary strong{color:var(--paper)}
@media(max-width:700px){.booking-panel.open{width:100vw;padding-top:72px}.slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-toolbar{flex-wrap:wrap}.admin-booking .actions{display:grid}.calendar .day small{font-size:.58rem}.recording-option summary{align-items:flex-start;flex-direction:column;gap:10px}.admin-new-head{display:grid}.manual-grid{grid-template-columns:1fr}}