.waiver-shell{--panel-soft:color-mix(in oklab, var(--ink) 4%, var(--panel));--blue-deep:color-mix(in oklab, var(--blue) 85%, var(--ink));--pink-deep:color-mix(in oklab, var(--pink) 85%, var(--ink));--line-soft:color-mix(in oklab, var(--ink) 8%, transparent);--shadow-sm:0 6px 18px #0000002e}.waiver-shell .booking-hero{background:linear-gradient(#080a0e2e,#080a0ec7),url(/images/booking-hero-1600.webp) 50%/cover no-repeat;align-items:flex-end;min-height:220px;display:flex;position:relative;overflow:hidden}.waiver-shell .booking-hero-inner{justify-content:space-between;align-items:flex-end;gap:20px;width:min(1240px,100% - 48px);margin:0 auto;padding:28px 0 30px;display:flex}.waiver-shell .booking-eyebrow{color:var(--yellow);letter-spacing:.18em;text-transform:uppercase;margin:0 0 6px;font-size:.82rem;font-weight:800}.waiver-shell .booking-hero h1{color:#fff;font-family:var(--ui);letter-spacing:.005em;text-transform:uppercase;text-shadow:0 6px 24px #0006;margin:0;font-size:clamp(2.4rem,5vw,3.4rem);font-weight:950;line-height:.95}.waiver-shell .hero-splat{pointer-events:none;background-position:50%;background-repeat:no-repeat;background-size:contain;position:absolute}.waiver-shell .hero-splat.pink{opacity:.65;background-image:url(/images/splatter-pink-600.webp);width:160px;height:160px;top:-28px;right:8%}.waiver-shell .hero-splat.yellow{opacity:.5;background-image:url(/images/splatter-yellow-600.webp);width:120px;height:120px;bottom:-30px;left:38%}.waiver-shell .hero-help{color:#ffffffe0;text-align:right;font-size:.92rem;font-weight:600;line-height:1.45}.waiver-shell .hero-help .hero-phone{color:var(--yellow);margin-top:2px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:1.1rem;font-weight:800;display:block}@media (max-width:720px){.waiver-shell .booking-hero-inner{flex-direction:column;align-items:flex-start}.waiver-shell .hero-help{text-align:left}}.waiver-shell .waiver-page{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:36px;width:min(1240px,100% - 48px);margin:0 auto;padding:48px 0 90px;display:grid}.waiver-shell .waiver-rail{grid-area:1/1/auto/-1}.waiver-shell .waiver-legal-col{grid-area:2/1}.waiver-shell .waiver-form-col{grid-area:2/2}.waiver-shell .waiver-valid-col{grid-area:2/1/auto/-1}.waiver-shell .waiver-legal-col,.waiver-shell .waiver-form-col,.waiver-shell .waiver-valid-col{min-width:0}.waiver-shell .waiver-legal-col>:first-child,.waiver-shell .waiver-form-col>:first-child,.waiver-shell .waiver-valid-col>:first-child{margin-top:0}.waiver-shell .waiver-valid-col>:first-child{max-width:760px;margin-inline:auto}@media (max-width:980px){.waiver-shell .waiver-page{grid-template-columns:minmax(0,1fr)}.waiver-shell .waiver-page>*{min-width:0}.waiver-shell .waiver-rail,.waiver-shell .waiver-legal-col,.waiver-shell .waiver-form-col,.waiver-shell .waiver-valid-col{grid-area:auto}}@media (max-width:480px){.waiver-shell .booking-hero-inner,.waiver-shell .waiver-page{width:min(1240px,100% - 32px)}}.waiver-shell .legal-block{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:12px;margin-top:22px;overflow:hidden}.waiver-shell .legal-head{margin-bottom:0;padding:22px 30px 0}.waiver-shell .legal-head .lh-eyebrow{color:var(--pink);letter-spacing:.18em;text-transform:uppercase;margin-bottom:8px;font-size:.72rem;font-weight:900;display:inline-block}.waiver-shell .legal-head h2{color:var(--blue);font-family:var(--ui);letter-spacing:.005em;text-transform:uppercase;margin:0;font-size:clamp(1.2rem,2.2vw,1.45rem);font-weight:950;line-height:1.1}.waiver-shell .legal-body{color:var(--ink-soft);padding:16px 30px 26px;font-size:.96rem;line-height:1.7}.waiver-shell .legal-body p{margin:0 0 14px}.waiver-shell .legal-body p:last-child{margin-bottom:0}.waiver-shell .legal-body .lead-line{color:var(--ink);font-weight:600}.waiver-shell .legal-body ol.risks{counter-reset:r;gap:10px;margin:0 0 14px;padding-left:0;list-style:none;display:grid}.waiver-shell .legal-body ol.risks li{counter-increment:r;grid-template-columns:30px 1fr;gap:10px;padding:2px 0;display:grid}.waiver-shell .legal-body ol.risks li:before{content:"(" counter(r, lower-alpha) ")";color:var(--pink);padding-top:1px;font-size:.92rem;font-weight:800}.waiver-shell .legal-body .validity{color:var(--blue);letter-spacing:.01em;background:#1f2a5e0d;border-radius:6px;margin-top:10px;padding:10px 14px;font-size:.9rem;font-weight:700;display:inline-block}.waiver-shell .legal-body .validity strong{font-weight:800}.waiver-shell .legal-body .ack-statement{background:var(--panel-soft);border-left:3px solid var(--pink);color:var(--ink);border-radius:4px;margin:16px 0 0;padding:16px 18px;font-size:.95rem;font-weight:500;line-height:1.6}.waiver-shell .legal-body .ack-statement strong{color:var(--blue);font-weight:800}.waiver-shell .form-block{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:12px;margin-top:32px;overflow:hidden}.waiver-shell .form-head{border-bottom:1px solid var(--line-soft);background:var(--panel-soft);padding:24px 30px 20px}.waiver-shell .form-head .fh-eyebrow{color:var(--pink);letter-spacing:.18em;text-transform:uppercase;margin-bottom:6px;font-size:.74rem;font-weight:900}.waiver-shell .form-head h2{color:var(--blue);font-family:var(--ui);letter-spacing:.005em;text-transform:uppercase;margin:0;font-size:1.55rem;font-weight:950;line-height:1}.waiver-shell .form-head p{color:var(--ink-soft);max-width:60ch;margin:8px 0 0;font-size:.93rem;line-height:1.55}.waiver-shell .form-body{padding:28px 30px 14px}.waiver-shell .form-section+.form-section{border-top:1px solid var(--line-soft);margin-top:26px;padding-top:24px}.waiver-shell .form-section-title{margin:0 0 14px}.waiver-shell .form-section-title .ft{color:var(--blue);font-family:var(--ui);letter-spacing:.14em;text-transform:uppercase;font-size:.82rem;font-weight:900}.waiver-shell .form-section-title .ft-sub{color:var(--ink-muted);letter-spacing:0;text-transform:none;max-width:60ch;margin-top:4px;font-size:.86rem;font-weight:600;line-height:1.5;display:block}.waiver-shell .roster{flex-direction:column;gap:10px;display:flex}.waiver-shell .roster-group{justify-content:space-between;align-items:center;gap:10px;padding:0 2px 4px;display:flex}.waiver-shell .roster-group .rg-title{color:var(--blue);font-family:var(--ui);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem;font-weight:900}.waiver-shell .roster-group .rg-count{color:var(--ink-muted);letter-spacing:.1em;text-transform:uppercase;font-size:.74rem;font-weight:800}.waiver-shell .person-card{background:var(--panel);border:1.5px solid var(--line);border-radius:10px;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;padding:14px 16px;transition:border-color .15s,box-shadow .15s;display:grid}.waiver-shell .person-card.is-guardian{border-color:var(--blue);box-shadow:0 6px 14px #1f2a5e14}.waiver-shell .pc-avatar{background:var(--panel-soft);border:1.5px solid var(--line);width:48px;height:48px;color:var(--blue);font-family:var(--ui);letter-spacing:.02em;border-radius:50%;place-items:center;font-size:.95rem;font-weight:900;display:grid}.waiver-shell .person-card.is-guardian .pc-avatar{background:var(--blue);color:var(--yellow);border-color:var(--blue)}.waiver-shell .pc-meta{gap:4px;min-width:0;display:grid}.waiver-shell .pc-name{color:var(--ink);letter-spacing:.005em;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:800;overflow:hidden}.waiver-shell .pc-name.is-empty{color:var(--ink-muted);font-style:italic;font-weight:600}.waiver-shell .pc-line{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.8rem;font-weight:600;display:flex}.waiver-shell .pc-line .role{color:var(--blue);font-family:var(--ui);letter-spacing:.14em;text-transform:uppercase;background:#1f2a5e14;border-radius:999px;padding:2px 8px;font-size:.66rem;font-weight:900;display:inline-block}.waiver-shell .person-card.is-guardian .pc-line .role{background:var(--yellow);color:var(--blue)}.waiver-shell .minor-chips{flex-wrap:wrap;gap:8px;padding:2px 0;display:flex}.waiver-shell .minor-chip{background:#e0218a12;border:1.5px solid #e0218a4d;border-radius:999px;align-items:center;gap:9px;max-width:100%;padding:6px 8px;display:inline-flex}.waiver-shell .minor-chip .mc-av{width:26px;height:26px;color:var(--pink);font-family:var(--ui);letter-spacing:.02em;background:#e0218a24;border-radius:50%;flex-shrink:0;place-items:center;font-size:.64rem;font-weight:900;display:grid}.waiver-shell .minor-chip .mc-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:.92rem;font-weight:800;overflow:hidden}.waiver-shell .minor-chip .mc-x{width:22px;height:22px;color:var(--pink);cursor:pointer;background:0 0;border:0;border-radius:50%;flex-shrink:0;place-items:center;font-size:.95rem;font-weight:800;line-height:1;transition:background .15s;display:grid}.waiver-shell .minor-chip .mc-x:hover{background:#e0218a2e}.waiver-shell .roster-add{background:var(--panel-soft);border:1.5px dashed var(--line);box-sizing:border-box;border-radius:10px;align-items:center;gap:12px;width:100%;padding:9px 10px 9px 16px;font-family:inherit;transition:border-color .15s,background .15s;display:flex}.waiver-shell .roster-add:focus-within{border-color:var(--pink);background:#e0218a0a;border-style:solid}.waiver-shell .roster-add.has-error{border-style:solid;border-color:#d33}.waiver-shell .roster-add .plus{background:var(--blue);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:1.15rem;font-weight:900;line-height:1;display:grid}.waiver-shell .roster-add .ra-entry{flex:1;min-width:0}.waiver-shell .roster-add .ra-input{box-sizing:border-box;width:100%;color:var(--ink);font-size:1rem;font-weight:700;font-family:var(--ui);letter-spacing:.005em;background:0 0;border:0;padding:8px 0}.waiver-shell .roster-add .ra-input:focus{outline:none}.waiver-shell .roster-add .ra-input::placeholder{color:var(--ink-muted);font-weight:600}.waiver-shell .roster-add .ra-add-btn{border:1.5px solid var(--blue);background:var(--blue);color:#fff;font-family:var(--ui);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:8px;flex-shrink:0;padding:10px 18px;font-size:.72rem;font-weight:900;transition:background .15s,border-color .15s}.waiver-shell .roster-add .ra-add-btn:hover{background:var(--pink);border-color:var(--pink)}.waiver-shell .roster .err-msg{color:#d33;font-size:.82rem;font-weight:700}.waiver-shell .roster-note{color:var(--ink-muted);margin-top:10px;font-size:.84rem;line-height:1.5}.waiver-shell .roster-note strong{color:var(--ink);font-weight:800}.waiver-shell .grid-2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.waiver-shell .grid-3{grid-template-columns:1fr 1fr 1fr;gap:16px;display:grid}.waiver-shell .grid-addr{grid-template-columns:1fr 180px;gap:16px;display:grid}.waiver-shell .grid-city{grid-template-columns:2fr 1fr 1fr;gap:16px;display:grid}.waiver-shell .grid-dob{grid-template-columns:1fr 1fr 1.2fr;gap:10px;display:grid}@media (max-width:620px){.waiver-shell .grid-2,.waiver-shell .grid-3,.waiver-shell .grid-addr,.waiver-shell .grid-city{grid-template-columns:1fr}}.waiver-shell .field{flex-direction:column;gap:6px;display:flex}.waiver-shell .field>label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink);font-size:.74rem;font-weight:800}.waiver-shell .field>label .req{color:var(--pink);margin-left:3px;font-weight:900}.waiver-shell .field input,.waiver-shell .field select{border:1.5px solid var(--line);background:var(--panel);min-height:50px;color:var(--ink);font-size:1rem;font-family:var(--ui);border-radius:8px;padding:0 14px;transition:border-color .15s,box-shadow .15s}.waiver-shell .field input:focus,.waiver-shell .field select:focus{border-color:var(--pink);outline:none;box-shadow:0 0 0 3px #e0218a2e}.waiver-shell .field .hint{color:var(--ink-muted);font-size:.8rem;font-weight:600}.waiver-shell .field-error input,.waiver-shell .field-error select,.waiver-shell .field-error .field-row-with-flag .flag,.waiver-shell .field-error .field-row-with-flag input{border-color:#d33}.waiver-shell .field-error .err-msg{color:#d33;font-size:.82rem;font-weight:700}.waiver-shell .radio-group{flex-wrap:wrap;gap:10px 28px;display:flex}.waiver-shell .radio-pill{min-height:44px;color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:1rem;font-weight:700;display:inline-flex}.waiver-shell .radio-pill input{opacity:0;width:0;height:0;position:absolute}.waiver-shell .radio-pill .rp-dot{border:2px solid var(--line);background:var(--panel);border-radius:999px;flex:none;place-items:center;width:18px;height:18px;transition:border-color .15s,box-shadow .15s;display:grid}.waiver-shell .radio-pill:hover .rp-dot,.waiver-shell .radio-pill.is-checked .rp-dot{border-color:var(--blue)}.waiver-shell .radio-pill.is-checked .rp-dot:after{content:"";background:var(--blue);border-radius:999px;width:9px;height:9px}.waiver-shell .radio-pill:focus-within .rp-dot{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in oklab, var(--blue) 22%, transparent)}.waiver-shell .field-error .rp-dot{border-color:#d33}.waiver-shell .field-row-with-flag{align-items:stretch;gap:0;display:flex;position:relative}.waiver-shell .field-row-with-flag .flag{border:1.5px solid var(--line);background:var(--panel-soft);width:56px;color:var(--ink-soft);letter-spacing:.06em;border-right:0;border-radius:8px 0 0 8px;flex-shrink:0;place-items:center;font-size:.78rem;font-weight:800;display:grid}.waiver-shell .field-row-with-flag input{border-radius:0 8px 8px 0;flex:1;min-width:0}.waiver-shell .sig-block{flex-direction:column;gap:10px;display:flex}.waiver-shell .sig-label{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:14px;display:flex}.waiver-shell .sig-label .lbl{letter-spacing:.1em;text-transform:uppercase;color:var(--ink);font-size:.74rem;font-weight:800}.waiver-shell .sig-label .req{color:var(--pink);margin-left:3px;font-weight:900}.waiver-shell .sig-label .modes{border:1px solid var(--line);background:var(--panel);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.waiver-shell .sig-mode{color:var(--ink-muted);font-family:var(--ui);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 14px;font-size:.74rem;font-weight:800}.waiver-shell .sig-mode.is-active{background:var(--blue);color:#fff}.waiver-shell .sig-canvas-wrap{border:1.5px dashed var(--line);background:repeating-linear-gradient(135deg, var(--panel-soft) 0, var(--panel-soft) 14px, var(--panel) 14px, var(--panel) 28px);border-radius:10px;position:relative;overflow:hidden}.waiver-shell .sig-canvas-wrap.is-active{border-color:var(--pink);background:var(--panel);border-style:solid}.waiver-shell .sig-spotlight .sig-canvas-wrap{animation:2.4s waiver-sig-spotlight}@keyframes waiver-sig-spotlight{0%,to{box-shadow:0 0 #e0218a00}30%,70%{border-color:var(--pink);box-shadow:0 0 0 4px #e0218a2e}}.waiver-shell .sig-canvas{touch-action:none;cursor:crosshair;width:100%;height:180px;display:block}.waiver-shell .sig-baseline{background:var(--line);pointer-events:none;height:1px;position:absolute;bottom:38px;left:24px;right:24px}.waiver-shell .sig-baseline:before{content:attr(data-hint);color:var(--ink-muted);letter-spacing:.04em;font-size:.78rem;font-weight:700;position:absolute;bottom:-22px;left:0}.waiver-shell .sig-canvas-wrap.has-ink .sig-baseline:before{opacity:0}.waiver-shell .sig-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.waiver-shell .sig-actions .sa-hint{color:var(--ink-muted);font-size:.8rem;font-weight:600}.waiver-shell .sig-clear{color:var(--ink-muted);font-family:var(--ui);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;padding:6px 10px;font-size:.8rem;font-weight:800}.waiver-shell .sig-clear:hover{color:var(--pink)}.waiver-shell .sig-type{font-family:Brush Script MT,Snell Roundhand,cursive!important;font-size:1.6rem!important}.waiver-shell .form-consent{background:var(--panel-soft);border:1.5px solid var(--line);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;grid-template-columns:30px 1fr;align-items:flex-start;gap:14px;margin-top:4px;padding:16px 18px;transition:border-color .12s,background .12s;display:grid}.waiver-shell .form-consent:hover{border-color:var(--pink)}.waiver-shell .form-consent.is-checked{border-color:var(--green);background:#7eb52a0f}.waiver-shell .form-consent input{opacity:0;width:0;height:0;position:absolute}.waiver-shell .form-consent .box{border:2px solid var(--line);background:var(--panel);border-radius:5px;place-items:center;width:22px;height:22px;margin-top:1px;display:grid}.waiver-shell .form-consent.is-checked .box{background:var(--green);border-color:var(--green)}.waiver-shell .form-consent.is-checked .box:after{content:"";border-bottom:2.5px solid #fff;border-left:2.5px solid #fff;width:11px;height:6px;transform:rotate(-45deg)translate(1px,-1px)}.waiver-shell .form-consent .ct{color:var(--ink-soft);font-size:.93rem;line-height:1.55}.waiver-shell .form-consent .ct strong{color:var(--ink);font-weight:800}.waiver-shell .form-foot{border-top:1px solid var(--line-soft);background:var(--panel-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;padding:22px 30px 26px;display:flex}.waiver-shell .form-submit{background:var(--pink);color:#fff;min-height:54px;font-family:var(--ui);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;border:0;border-radius:8px;align-items:center;gap:10px;padding:0 30px;font-size:.96rem;font-weight:900;transition:background .15s,transform .12s,box-shadow .15s;display:inline-flex;box-shadow:0 14px 28px #e0218a52}.waiver-shell .form-submit:hover{background:var(--pink-deep);transform:translateY(-1px)}.waiver-shell .form-submit:after{content:"→";font-weight:900}.waiver-shell .form-submit[disabled]{opacity:.6;cursor:progress;box-shadow:none;transform:none}.waiver-shell .form-error{color:#b3261e;flex-basis:100%;margin:0;font-size:.9rem;font-weight:700}.waiver-shell .waiver-rail{display:block}.waiver-shell .rail-card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:12px;grid-template-columns:minmax(150px,220px) 1fr;align-items:stretch;gap:0 28px;padding:20px 26px;display:grid}.waiver-shell .rail-card .rc-head{border-right:1px solid var(--line-soft);flex-direction:column;justify-content:center;margin:0;padding:2px 28px 2px 0;display:flex}.waiver-shell .rail-card .rc-head h3{color:var(--blue);font-family:var(--ui);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.95rem;font-weight:900}.waiver-shell .rail-card .rc-head p{color:var(--ink-muted);letter-spacing:.14em;text-transform:uppercase;margin:4px 0 0;font-size:.72rem;font-weight:800}.waiver-shell .rail-card ol.steps{counter-reset:s;grid-template-columns:repeat(3,1fr);align-items:start;gap:14px 24px;margin:0;padding:0;list-style:none;display:grid}.waiver-shell .rail-card ol.steps li{counter-increment:s;grid-template-columns:22px 1fr;align-items:flex-start;gap:12px;display:grid}.waiver-shell .rail-card ol.steps li:before{content:counter(s);width:22px;height:22px;color:var(--blue);font-family:var(--ui);background:#1f2a5e14;border-radius:50%;place-items:center;font-size:.78rem;font-weight:900;display:grid}.waiver-shell .rail-card ol.steps li strong{color:var(--blue);letter-spacing:.04em;text-transform:uppercase;margin-bottom:2px;font-size:.84rem;font-weight:900;display:block}.waiver-shell .rail-card ol.steps li span{color:var(--ink-muted);font-size:.86rem;line-height:1.5}@media (max-width:980px){.waiver-shell .rail-card{padding:20px 22px;display:block}.waiver-shell .rail-card .rc-head{border-right:0;border-bottom:1px solid var(--line-soft);margin:0 0 14px;padding:0 0 12px;display:block}.waiver-shell .rail-card ol.steps{grid-template-columns:1fr;gap:14px}}.waiver-shell .confirm-overlay{z-index:200;background:#080a0ea6;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.waiver-shell .confirm-overlay.is-open{display:flex}.waiver-shell .confirm-modal{background:var(--panel);width:min(520px,100%);max-height:calc(100dvh - 48px);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.waiver-shell .confirm-modal .cm-hero{background:linear-gradient(135deg, var(--blue), var(--blue-deep));color:#fff;flex-shrink:0;padding:30px 30px 24px;position:relative;overflow:hidden}.waiver-shell .confirm-modal .cm-hero:before{content:"";opacity:.22;background:url(/images/splatter-pink-600.webp) 50%/contain no-repeat;width:160px;height:160px;position:absolute;top:-34px;right:-26px}.waiver-shell .confirm-modal .cm-hero>*{position:relative}.waiver-shell .confirm-modal .cm-mark{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:48px;height:48px;margin-bottom:14px;font-size:1.4rem;font-weight:950;display:grid}.waiver-shell .confirm-modal h3{color:#fff;font-family:var(--ui);text-transform:uppercase;letter-spacing:.005em;margin:0;font-size:1.6rem;font-weight:950;line-height:1}.waiver-shell .confirm-modal h3+p{color:#ffffffd1;margin:8px 0 0;font-size:.95rem;line-height:1.55}.waiver-shell .confirm-modal .cm-body{flex:auto;min-height:0;padding:22px 30px 26px;overflow-y:auto}.waiver-shell .confirm-modal .cm-row{border-bottom:1px dashed var(--line-soft);grid-template-columns:1fr auto;gap:12px;padding:10px 0;display:grid}.waiver-shell .confirm-modal .cm-row:last-of-type{border-bottom:0}.waiver-shell .confirm-modal .cm-row .k{color:var(--ink-muted);letter-spacing:.1em;text-transform:uppercase;font-size:.78rem;font-weight:800}.waiver-shell .confirm-modal .cm-row .v{color:var(--blue);font-size:.95rem;font-weight:800}.waiver-shell .confirm-modal .cm-records{gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.waiver-shell .confirm-modal .cm-records li{background:var(--panel-soft);border:1px solid var(--line-soft);border-radius:6px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 10px;font-size:.86rem;display:grid}.waiver-shell .confirm-modal .cm-records .cri{color:var(--ink-muted);letter-spacing:.04em;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.74rem}.waiver-shell .confirm-modal .cm-records .crn{color:var(--ink);font-weight:700}.waiver-shell .confirm-modal .cm-records .crr{font-family:var(--ui);letter-spacing:.14em;text-transform:uppercase;border-radius:999px;padding:3px 8px;font-size:.66rem;font-weight:900}.waiver-shell .confirm-modal .cm-records .crr.guardian{background:var(--blue);color:var(--yellow)}.waiver-shell .confirm-modal .cm-records .crr.minor{color:var(--pink);background:#e0218a1f}.waiver-shell .confirm-modal .cm-foot{border-top:1px solid var(--line-soft);background:var(--panel-soft);flex-shrink:0;justify-content:flex-end;gap:12px;padding:16px 30px 22px;display:flex}.waiver-shell .confirm-modal .cm-close{background:var(--blue);color:#fff;min-height:46px;font-family:var(--ui);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;border:0;border-radius:8px;padding:0 22px;font-size:.86rem;font-weight:900}.waiver-shell .confirm-modal .cm-close:hover{background:var(--blue-deep)}.waiver-shell .confirm-modal .cm-old-code{color:#92580a;background:#f59f0b1a;border:1px solid #f59f0b66;border-radius:8px;margin:14px 0 0;padding:10px 14px;font-size:.85rem;font-weight:600}.waiver-shell .magic-banner{border:1.5px solid #1f2a5e29;border-left:3px solid var(--blue);background:linear-gradient(135deg,#1f2a5e0a,#e0218a0f);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:24px 0 0;padding:16px 18px;display:flex}.waiver-shell .magic-banner .mb-text{flex-direction:column;gap:2px;display:flex}.waiver-shell .magic-banner .mb-text strong{color:var(--blue);text-transform:uppercase;letter-spacing:.04em;font-size:.95rem;font-weight:900}.waiver-shell .magic-banner .mb-text span{color:var(--ink-soft);font-size:.88rem}.waiver-shell .magic-banner.is-found{border-color:#7eb52a5c;border-left-color:var(--green);background:linear-gradient(135deg,#7eb52a1a,#7eb52a0a)}.waiver-shell .magic-banner.is-found .mb-text strong{color:#4a7314}.waiver-shell .magic-banner.is-expired{background:linear-gradient(135deg,#f59f0b1f,#f59f0b0a);border-color:#f59f0b66 #f59f0b66 #f59f0b66 #d97706}.waiver-shell .magic-banner.is-expired .mb-text strong{color:#92580a}.waiver-shell .magic-banner.is-resign{animation:1.6s ease-in-out 3 waiver-mb-pulse}@keyframes waiver-mb-pulse{0%,to{box-shadow:0 0 #e0218a00}50%{box-shadow:0 0 0 6px #e0218a29}}.waiver-shell .magic-banner .mb-btn{background:var(--panel);color:var(--blue);border:1.5px solid var(--line);min-height:40px;font-family:var(--ui);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border-radius:8px;padding:0 16px;font-size:.78rem;font-weight:800;transition:border-color .12s,color .12s}.waiver-shell .magic-banner .mb-btn:hover{border-color:var(--blue);color:var(--blue-deep)}.waiver-shell .magic-overlay{z-index:200;background:#080a0ea6;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.waiver-shell .magic-modal{background:var(--panel);width:min(440px,100%);box-shadow:var(--shadow);border-radius:14px;padding:30px;position:relative}.waiver-shell .magic-modal h3{color:var(--blue);font-family:var(--ui);letter-spacing:.005em;text-transform:uppercase;margin:0 0 8px;font-size:1.35rem;font-weight:950}.waiver-shell .magic-modal p{color:var(--ink-soft);margin:0 0 18px;font-size:.95rem;line-height:1.55}.waiver-shell .magic-modal .field{margin-bottom:16px}.waiver-shell .magic-modal .field label{letter-spacing:.1em;text-transform:uppercase;color:var(--ink);margin-bottom:6px;font-size:.74rem;font-weight:800}.waiver-shell .magic-modal .err-msg{color:var(--pink);margin-top:6px;font-size:.85rem;font-weight:600;display:block}.waiver-shell .magic-modal p.magic-hint{color:var(--ink-muted);margin:0;font-size:.85rem}.waiver-shell .magic-close{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:32px;height:32px;font-size:1.1rem;display:grid;position:absolute;top:14px;right:14px}.waiver-shell .magic-close:hover{background:var(--panel-soft);color:var(--blue)}.waiver-shell .magic-send{background:var(--pink);color:#fff;width:100%;min-height:48px;font-family:var(--ui);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;border:0;border-radius:8px;padding:0 22px;font-size:.88rem;font-weight:900;transition:background .15s}.waiver-shell .magic-send:hover:not(:disabled){background:var(--pink-deep)}.waiver-shell .magic-send:disabled{background:var(--line);color:var(--ink-muted);cursor:not-allowed}.waiver-shell .checkin-codes{margin:18px 0 4px}.waiver-shell .cc-intro{color:var(--ink-soft);text-align:center;margin:0 0 12px;font-size:.9rem}.waiver-shell .cc-single{background:var(--panel);border:1px solid var(--line);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:16px;display:flex}.waiver-shell .cc-role{letter-spacing:.08em;text-transform:uppercase;background:var(--panel-soft);color:var(--ink-muted);border-radius:999px;padding:2px 8px;font-size:.66rem;font-weight:800}.waiver-shell .cc-role.guardian{background:color-mix(in srgb, var(--pink) 18%, transparent);color:var(--pink-deep)}.waiver-shell .cc-role.minor{background:color-mix(in srgb, var(--blue) 18%, transparent);color:var(--blue-deep)}.waiver-shell .cc-covers{margin-top:14px}.waiver-shell .cc-covers-intro{color:var(--ink-soft);text-align:center;margin:0 0 8px;font-size:.82rem;font-weight:700}.waiver-shell .cc-covers-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.waiver-shell .cc-covers-item{background:var(--panel);border:1px solid var(--line);border-radius:10px;align-items:center;gap:10px;padding:8px 12px;display:flex}.waiver-shell .cc-covers-name{color:var(--ink);font-size:.92rem;font-weight:700}.waiver-shell .cc-qr{background:#fff;border-radius:8px;width:100%;max-width:180px;height:auto;margin:4px 0}.waiver-shell .cc-code-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);font-size:.66rem}.waiver-shell .cc-code{letter-spacing:.14em;color:var(--ink);font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.95rem;font-weight:700}.waiver-shell .cc-download{color:var(--pink-deep);background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:8px;margin-top:6px;padding:5px 12px;font-family:inherit;font-size:.8rem;font-weight:700;text-decoration:none}.waiver-shell .cc-download:hover{border-color:var(--pink);background:color-mix(in srgb, var(--pink) 8%, transparent)}.waiver-shell .cc-email{flex-direction:column;align-items:center;gap:6px;margin-top:14px;display:flex}.waiver-shell .cc-email-btn{color:var(--ink);background:var(--panel-soft);border:1px solid var(--line);cursor:pointer;border-radius:10px;padding:9px 18px;font-size:.88rem;font-weight:700}.waiver-shell .cc-email-btn:hover:not(:disabled){border-color:var(--ink-muted)}.waiver-shell .cc-email-btn:disabled{opacity:.6;cursor:default}.waiver-shell .cc-email-err{color:var(--pink-deep);font-size:.8rem}
