.sp-root{--sp-bg:#0d141a;--sp-panel:#111d25;--sp-border:#34404b;--sp-gold:#e2ae68;--sp-text:#f6f7f8;--sp-muted:#a9b2ba;box-sizing:border-box;max-width:1440px;margin:30px auto;color:var(--sp-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}.sp-root *{box-sizing:border-box}.sp-root button,.sp-root input{font:inherit}.sp-top{padding:34px 32px;border:1px solid var(--sp-border);border-radius:16px;background:linear-gradient(110deg,#101b23,#28303a);margin-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:15px}.sp-top h2{color:#fff;margin:8px 0;font-size:clamp(26px,3vw,42px);line-height:1.2}.sp-top p{color:#c8cdd2;margin:0}.sp-eyebrow{font-weight:700;color:var(--sp-gold);font-size:11px;letter-spacing:.15em}.sp-top-tag{background:#3b2a1a;border:1px solid var(--sp-gold);color:#ffe2bb;padding:10px 14px;border-radius:9px;font-size:13px}.sp-layout{display:grid;grid-template-columns:minmax(200px,0.88fr) minmax(230px,1.1fr) minmax(300px,1.23fr);gap:15px;align-items:start}.sp-card{background:var(--sp-bg);border:1px solid var(--sp-border);border-radius:13px;min-width:0;padding:19px;box-shadow:0 12px 30px #0002}.sp-card h3{color:#fff;margin:0;font-size:20px;line-height:1.3}.sp-card-head{margin:0 0 20px}.sp-nav{display:flex;gap:8px;justify-content:space-between;align-items:center;margin-top:16px;text-transform:capitalize}.sp-nav strong{font-size:13px}.sp-nav button{cursor:pointer;border:1px solid #3d4b57;border-radius:7px;color:var(--sp-text);background:#15242f;min-width:32px;height:32px}.sp-weekdays,.sp-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.sp-weekdays span{font-size:11px;color:#b5c0c9;margin-bottom:10px}.sp-day{border:1px solid #303d47!important;background:#131f28!important;position:relative;cursor:pointer;color:#fff!important;border-radius:7px!important;font-weight:500;aspect-ratio:1;font-size:12px!important;padding:0!important;min-width:0}.sp-day.sp-has-event{border-color:#af7c41!important}.sp-day.sp-active,.sp-day:hover{background:var(--sp-gold)!important;color:#161616!important}.sp-day i{position:absolute;bottom:3px;left:calc(50% - 3px);width:6px;height:6px;background:var(--sp-gold);border-radius:50%}.sp-day.sp-active i{background:#111}.sp-hint{color:var(--sp-muted);font-size:12px;line-height:1.5;margin:17px 0 0}.sp-event-list{display:flex;flex-direction:column;gap:10px}.sp-event{display:flex;align-items:center;text-align:left;gap:12px;width:100%;border-radius:10px!important;border:1px solid var(--sp-border)!important;background:var(--sp-panel)!important;padding:8px!important;color:var(--sp-text)!important;cursor:pointer;min-width:0}.sp-event:hover,.sp-event.sp-selected{border-color:var(--sp-gold)!important}.sp-event img,.sp-placeholder{width:75px;height:80px;object-fit:cover;border-radius:7px;flex-shrink:0}.sp-placeholder{display:grid;place-items:center;background:#2c363b;font-size:30px;color:var(--sp-gold)}.sp-event-text{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.sp-event-text b{font-size:14px}.sp-event-text small{color:var(--sp-muted);font-size:11px;overflow-wrap:anywhere}.sp-event-stats{display:flex;align-items:flex-end;flex-direction:column;gap:6px;white-space:nowrap;font-size:13px}.sp-event-stats small{font-size:11px}.sp-good{color:#8ee5a0}.sp-sold{color:#ff918e}.sp-booking-box{padding:21px}.sp-cover{width:100%;height:190px;object-fit:cover;border-radius:9px;margin-bottom:15px}.sp-booking-box h3{font-size:24px;margin:8px 0 14px}.sp-description{font-size:13px;line-height:1.55;color:#c2cbd2;max-height:115px;overflow:auto}.sp-facts{display:grid;gap:10px;margin:17px 0;padding-bottom:18px;border-bottom:1px solid var(--sp-border);font-size:13px}.sp-facts>div{display:flex;gap:10px;align-items:center}.sp-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sp-fields label{font-size:12px;display:flex;flex-direction:column;gap:6px;color:#cdd3d9}.sp-fields .sp-wide{grid-column:1/-1}.sp-fields input{width:100%;min-width:0;background:#1e2b35!important;border:1px solid #485765!important;border-radius:6px!important;padding:10px!important;color:#fff!important;min-height:40px}.sp-consent{display:flex;align-items:start;gap:9px;font-size:12px;color:#c9d2d9;line-height:1.5;margin:16px 0}.sp-consent input{margin-top:3px}.sp-consent a{color:var(--sp-gold)!important}.sp-info{border:1px solid #b58350;background:#2e251b;color:#ffdcaa;font-size:12px;line-height:1.6;border-radius:8px;padding:12px;margin:17px 0}.sp-total{font-size:16px;font-weight:700;color:var(--sp-gold);text-align:right}.sp-submit{width:100%;border:0!important;border-radius:8px!important;padding:14px 20px!important;background:linear-gradient(110deg,#e8b16b,#f2d09b)!important;color:#1b1611!important;font-weight:800!important;cursor:pointer}.sp-submit:disabled{opacity:.55;cursor:not-allowed}.sp-booking-box small{display:block;text-align:center;color:var(--sp-muted);margin-top:12px;font-size:11px}.sp-message{font-size:13px;margin-top:12px}.sp-success{color:#98e8a9}.sp-error{color:#ff9b98}.sp-muted{color:var(--sp-muted);font-size:13px}@media(max-width:1100px){.sp-layout{grid-template-columns:1fr 1fr}.sp-booking-box{grid-column:1/-1}.sp-cover{height:250px}}@media(max-width:680px){.sp-layout{grid-template-columns:1fr}.sp-booking-box{grid-column:auto}.sp-top{padding:24px 18px;display:block}.sp-top-tag{display:inline-block;margin-top:16px}.sp-card{padding:15px}.sp-event img,.sp-placeholder{width:62px;height:72px}.sp-event-stats{font-size:12px}}

.sp-external-links{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0}
.sp-external-links a{font-size:13px;padding:10px 12px;border:1px solid #c9ac7c;border-radius:8px;background:#fff8ee;color:#342719;text-decoration:none;font-weight:700}
.sp-external-links a:hover{background:#f2e5d0}

/* Event pagination: eight entries per page */
.sp-pagination{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:14px 2px 2px;font-size:13px;color:#435165}
.sp-pagination button{padding:9px 12px;background:#fff;border:1px solid #d9d5cb;border-radius:8px;color:#243242;cursor:pointer;font:inherit;font-weight:600}
.sp-pagination button:hover:not(:disabled){background:#f8efe0;border-color:#c99037}
.sp-pagination button:disabled{opacity:.4;cursor:not-allowed}

.sp-option{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:12px 0;padding:14px;border:1px solid #d9d3c8;border-radius:9px;background:#faf7f2;color:#182838}.sp-option input{width:18px;height:18px;accent-color:#bb8a43}.sp-option strong{margin-left:auto}.sp-option[hidden]{display:none!important}
