
/* PURE LIVE reservation UI — deliberately isolated from the active WP theme */
.pl-wrap, .pl-wrap * { box-sizing:border-box !important; }
.pl-wrap{
  --pink:#ff6fae; --pink2:#ff8aa8; --ink:#37313b; --muted:#817782;
  --line:#f1dce7; --soft:#fff7fb; --gold:#fff8df;
  width:min(100% - 24px, 980px) !important;
  margin:0 auto !important;
  padding:0 0 56px !important;
  color:var(--ink) !important;
  font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",Meiryo,sans-serif !important;
  font-size:16px !important; line-height:1.65 !important;
}
.pl-wrap a{color:var(--pink)!important;text-decoration:none!important}
.pl-hero{
  margin:18px 0 14px!important;padding:34px 22px!important;text-align:center!important;
  border:1px solid var(--line)!important;border-radius:28px!important;
  background:linear-gradient(145deg,#fff 15%,#fff5fa 100%)!important;
  box-shadow:0 16px 45px rgba(255,111,174,.10)!important;
}
.pl-kicker{display:inline-flex!important;padding:7px 14px!important;border-radius:999px!important;background:#fff!important;border:1px solid var(--line)!important;color:var(--pink)!important;font-size:12px!important;font-weight:900!important;letter-spacing:.06em!important}
.pl-hero h1{margin:14px 0 10px!important;padding:0!important;border:0!important;font-size:clamp(38px,10vw,62px)!important;line-height:1.1!important;font-weight:900!important;color:var(--pink)!important;letter-spacing:-.04em!important}
.pl-date{font-size:18px!important;font-weight:900!important;letter-spacing:.06em!important}
.pl-venue{margin-top:8px!important;font-size:18px!important;font-weight:900!important}
.pl-address{margin-top:7px!important;font-size:13px!important;color:var(--muted)!important;line-height:1.7!important}
.pl-map{display:inline-block!important;margin-top:8px!important;font-size:14px!important;font-weight:900!important}

.pl-section{margin:0!important;padding:28px 0 4px!important}
.pl-section-head{margin:0 0 16px!important;text-align:center!important}
.pl-section-head small{display:block!important;margin:0 0 2px!important;color:var(--pink)!important;font-size:11px!important;font-weight:900!important;letter-spacing:.16em!important}
.pl-section-title{font-size:25px!important;line-height:1.3!important;font-weight:900!important}
.pl-card{margin:0!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:22px!important;box-shadow:0 12px 34px rgba(255,111,174,.09)!important}

.pl-price-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}
.pl-price-card{padding:20px 12px!important;text-align:center!important}
.pl-price-card h3{margin:0 0 7px!important;padding:0!important;border:0!important;font-size:16px!important;font-weight:900!important}
.pl-price{font-size:25px!important;line-height:1.2!important;font-weight:900!important;color:var(--pink)!important}
.pl-sub{margin-top:7px!important;font-size:12px!important;color:var(--muted)!important}
.pl-alert{margin:12px 0 0!important;padding:14px 16px!important;border:1px solid #f0dfa3!important;border-radius:16px!important;background:var(--gold)!important;text-align:center!important;font-size:14px!important;font-weight:800!important}

.pl-lineup-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important}
.pl-lineup-card{padding:18px!important}
.pl-lineup-card h3{margin:0!important;padding:0 0 10px!important;border:0!important;text-align:center!important;font-size:19px!important;font-weight:900!important}
.pl-start{margin:0 0 8px!important;text-align:center!important;color:var(--pink)!important;font-size:13px!important;font-weight:900!important}
.pl-performers{list-style:none!important;margin:0!important;padding:0!important}
.pl-performers li{list-style:none!important;margin:0!important;padding:10px 4px!important;border-bottom:1px dashed var(--line)!important;text-align:center!important;font-size:15px!important;font-weight:850!important}
.pl-performers li::before,.pl-performers li::marker{display:none!important;content:""!important}
.pl-performers li:last-child{border-bottom:0!important}
.pl-member{display:block!important;margin-top:2px!important;color:var(--muted)!important;font-size:12px!important;font-weight:800!important}
.pl-note{margin:10px 0 0!important;text-align:center!important;color:var(--muted)!important;font-size:12px!important}

.pl-guide{padding:20px!important}
.pl-guide ul{margin:0!important;padding:0!important;list-style:none!important}
.pl-guide li{position:relative!important;margin:0!important;padding:10px 8px 10px 28px!important;border-bottom:1px solid #f7eaf0!important;font-size:14px!important;font-weight:800!important}
.pl-guide li:last-child{border-bottom:0!important}
.pl-guide li:before{content:"✓"!important;position:absolute!important;left:5px!important;color:var(--pink)!important;font-weight:900!important}

.pl-form{padding:22px!important}
.pl-one-person{margin:0 0 18px!important;padding:14px!important;border:1px solid var(--line)!important;border-radius:16px!important;background:var(--soft)!important;text-align:center!important;font-size:14px!important;font-weight:800!important}
.pl-wait-title{margin:0!important;color:var(--pink)!important;font-size:13px!important;line-height:1.4!important;font-weight:900!important;letter-spacing:.08em!important}
.pl-wait-date{margin:5px 0 0!important;font-size:clamp(18px,5vw,22px)!important;line-height:1.4!important;font-weight:900!important;white-space:nowrap!important}
.pl-wait-copy{margin:16px 0 0!important;font-size:14px!important;line-height:1.75!important;font-weight:750!important}
.pl-wait-copy p{margin:0 0 11px!important;padding:0!important}
.pl-wait-copy p:last-child{margin-bottom:0!important}
.pl-wait-copy strong{color:var(--pink)!important;font-weight:900!important}
.pl-field{display:flex!important;flex-direction:column!important;gap:6px!important;margin:0!important}
.pl-field>label{display:block!important;margin:0!important;padding:0!important;font-size:14px!important;font-weight:900!important}
.pl-ticket-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;margin-top:4px!important}
.pl-ticket{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;min-height:88px!important;margin:0!important;padding:14px!important;border:1.5px solid var(--line)!important;border-radius:17px!important;background:#fff!important;text-align:left!important;font-size:15px!important;font-weight:900!important;cursor:pointer!important}
.pl-ticket:has(input:checked){border-color:var(--pink)!important;background:#fff6fa!important;box-shadow:0 0 0 3px rgba(255,111,174,.10)!important}
.pl-ticket input[type=radio]{appearance:none!important;-webkit-appearance:none!important;flex:0 0 22px!important;width:22px!important;height:22px!important;margin:0!important;padding:0!important;border:2px solid #aaa2aa!important;border-radius:50%!important;background:#fff!important}
.pl-ticket input[type=radio]:checked{border:6px solid var(--pink)!important}
.pl-ticket-price{display:block!important;margin-top:3px!important;color:var(--muted)!important;font-size:11.5px!important;line-height:1.4!important;font-weight:800!important}
.pl-sold{opacity:.5!important;cursor:not-allowed!important}

.pl-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:15px!important;margin-top:18px!important}
.pl-field-full{grid-column:1/-1!important}
.pl-field input[type=text],.pl-field input[type=email],.pl-field input[type=tel],.pl-field textarea{
  display:block!important;width:100%!important;max-width:none!important;min-width:0!important;
  margin:0!important;padding:13px 14px!important;border:1.5px solid #ead6e1!important;border-radius:14px!important;
  background:#fff!important;color:var(--ink)!important;font:inherit!important;font-size:16px!important;line-height:1.4!important;
  box-shadow:none!important;outline:none!important;
}
.pl-field input:focus,.pl-field textarea:focus{border-color:var(--pink)!important;box-shadow:0 0 0 3px rgba(255,111,174,.10)!important}
.pl-field textarea{min-height:105px!important;resize:vertical!important}
.pl-submit{display:block!important;width:100%!important;min-height:56px!important;margin:20px 0 0!important;padding:13px 18px!important;border:0!important;border-radius:999px!important;background:linear-gradient(135deg,var(--pink),var(--pink2))!important;color:#fff!important;font-size:16px!important;font-weight:900!important;box-shadow:0 10px 25px rgba(255,111,174,.22)!important;cursor:pointer!important}
.pl-submit[disabled]{opacity:.55!important}
.pl-result{display:none;margin-top:15px!important;padding:15px!important;border-radius:15px!important;font-size:14px!important;font-weight:800!important}
.pl-success{background:#f1fff5!important;border:1px solid #bfe9ca!important}
.pl-error{background:#fff2f2!important;border:1px solid #efc3c3!important}

@media(max-width:720px){
 .pl-wrap{width:min(100% - 20px,680px)!important}
 .pl-hero{padding:27px 15px!important;border-radius:23px!important}
 .pl-price-grid{grid-template-columns:1fr!important;gap:9px!important}
 .pl-price-card{display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;column-gap:12px!important;padding:15px 17px!important;text-align:left!important}
 .pl-price-card h3{margin:0!important}
 .pl-price{font-size:22px!important;text-align:right!important}
 .pl-sub{grid-column:1/-1!important;margin:2px 0 0!important;text-align:right!important}
 .pl-lineup-grid{grid-template-columns:1fr!important}
 .pl-ticket-grid{grid-template-columns:1fr!important}
 .pl-ticket{min-height:76px!important}
 .pl-grid{grid-template-columns:1fr!important}
 .pl-field-full{grid-column:auto!important}
 .pl-form,.pl-lineup-card{padding:16px!important}
}
