.pocket-trigger{background:transparent;border:0;border-bottom:1px dashed currentColor;padding:9px 0;font-size:12px;white-space:nowrap;cursor:pointer}.personal-pocket-dialog{width:min(660px,calc(100% - 24px));max-height:90vh;overflow:auto;padding:28px;background:#f8f0df;color:#20312c;border:2px solid #23332c;box-shadow:8px 8px #f277af}.personal-pocket-dialog::backdrop{background:#152923cc}.personal-pocket-close{float:right;background:#dfff55;border:1px solid;padding:5px 12px;font-size:26px;cursor:pointer}.personal-pocket-dialog>small{font:10px monospace}.personal-pocket-dialog>h2{font-size:28px;line-height:1.4;margin:24px 40px 20px 0}.pocket-picker{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.pocket-picker button{padding:8px 12px;border:1px solid;background:#fff9e8;color:#25322a;cursor:pointer;font-size:12px}.pocket-picker button[aria-pressed=true]{background:#263b31;color:#e2fa62}.personal-pocket-content .fan-object{position:static!important;width:100%!important;max-width:100%;margin:0;box-shadow:none!important;padding:20px!important}.personal-pocket-content .corner-surprise{margin:0 auto;width:min(360px,100%)}.personal-pocket-content .wristband-reveal{width:100%;max-width:100%;box-sizing:border-box}.personal-pocket-content .panda-ticket img{width:100%}.planted-pocket{display:block;margin:30px 0 22px auto;padding:14px 20px;max-width:100%;border:1px dashed #233429;background:#e5f779;color:#253224;box-shadow:3px 3px #ed99b5;transform:rotate(-2deg);cursor:pointer}.personal-pocket-content img{max-width:100%}.personal-pocket-content .fan-photo-credit a{overflow-wrap:anywhere}.personal-pocket-content .fan-object h3{font-size:28px}@media(max-width:600px){.personal-pocket-dialog{padding:18px}.masthead-tools{gap:9px}.personal-pocket-dialog>h2{font-size:24px}.personal-pocket-content .fan-object{padding:12px!important}} 
.personal-pocket-content .season-stage strong{color:#fdf4e6}.panda-photobooth{text-align:center}.selfie-print{background:#fffdf4;border:1px solid #28382c;padding:22px 16px;margin:0 auto 22px;max-width:330px;box-shadow:5px 6px #c4b29a;transform:rotate(-2deg)}.selfie-print>small{font:10px monospace}.selfie-pose{width:192px;height:208px;background-size:1536px 2288px;background-repeat:no-repeat;margin:16px auto}.selfie-caption{font-size:16px;line-height:1.7}.selfie-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.selfie-actions button{padding:10px 14px;border:1px solid #24362e;background:#def674;color:#24362e;cursor:pointer}.selfie-actions button:disabled{opacity:.5;cursor:default}.selfie-status{font-size:13px;line-height:1.7}.selfie-album:empty{display:none}.selfie-album{border-top:1px dashed #63715e;margin-top:24px;padding-top:20px}.selfie-cover{position:relative!important;z-index:3;margin:10px auto!important}.selfie-taken{animation:selfie-click .35s ease-out}@keyframes selfie-click{from{transform:rotate(0deg) scale(.96);box-shadow:0 0 0 5px #edbf74}to{transform:rotate(-2deg) scale(1);box-shadow:5px 6px #c4b29a}}@media(prefers-reduced-motion:reduce){.selfie-taken{animation:none}}
.quiet-clue{display:block;flex:none;margin:16px 8px 4px auto;padding:7px 12px;min-height:32px;border:0;border-bottom:1px dashed #837762;background:#e6decd;color:#655b49;font:11px/1.4 monospace;letter-spacing:1px;transform:rotate(-5deg);cursor:pointer;box-shadow:1px 2px 2px #00000012}.quiet-clue:hover{transform:rotate(0deg) translateY(-2px)}.quiet-clue:focus-visible,.portrait-secret:focus-visible{outline:2px solid #c76d3c;outline-offset:4px}.portrait-secret{display:block;appearance:none;border:0;background:transparent;padding:0;width:100%;cursor:pointer}.portrait-secret img{width:100%;display:block}.offstage-note{padding:28px;background:#eee4ce;border:1px dashed #94856c;text-align:center}.offstage-note h3{font-size:26px;line-height:1.45}.offstage-note p{line-height:1.9;min-height:70px}.offstage-note small{display:block;font:10px/1.5 monospace}.offstage-note button{padding:10px 16px;margin:6px;border:1px solid #586249;background:#f7f2dc;color:#33402c;cursor:pointer}.offstage-note button[aria-pressed=true]{background:#33402c;color:#f7f2dc}.offstage-note button:disabled{opacity:.6;cursor:default}.seat-ticket{border-block:1px dashed #9c927d;padding:22px 0}.receipt-note{max-width:330px;margin:auto;background:#fffaf0;transform:rotate(-2deg)}.personal-pocket-dialog>h2{font-size:22px}.item-navigation:has(.quiet-clue){flex-wrap:wrap}.publication-footer>.quiet-clue{background:transparent;color:inherit;min-width:36px;opacity:.65}@media(prefers-reduced-motion:reduce){.quiet-clue:hover{transform:none}}
/* Handwritten margins and generously spaced reverse sides. */
.fan-letter{display:block;text-align:left;color:#354136;font-weight:400;letter-spacing:0}.fan-letter[hidden],.fan-time-photo[hidden]{display:none}.letter-eyebrow,.letter-sign{display:block!important;font:10px/1.8 monospace!important;letter-spacing:1px}.letter-title{display:block;font-size:23px;line-height:1.55;margin:12px 0 18px;font-family:Georgia,'Songti SC',serif}.letter-paragraph{display:block;font-size:15px;line-height:1.95;margin:14px 0}.letter-sign{text-align:right;margin-top:22px;color:#8a684f}.fan-letter-sheet{margin:14px 0 20px}.letter-toggle{width:100%;padding:13px 14px;text-align:left;background:#f5e6c9;border:1px dashed #8a765b;color:#374236;cursor:pointer;font:13px/1.6 inherit}.fan-letter-sheet .fan-letter{padding:22px;background:repeating-linear-gradient(0deg,#92765709 0 1px,transparent 1px 30px),#fff9e9;border:1px solid #cbbb9c;border-top:0;box-shadow:2px 4px 8px #44331812}.personal-pocket-content .character-back{height:auto;min-height:390px;padding:24px!important;background:#fff9e9!important;color:#354136!important}.personal-pocket-content .character-back>.fan-letter{margin-top:22px}.personal-pocket-content .character-card:has(.character-back:not([hidden])){height:auto!important;min-height:390px}.fan-time-tabs{display:flex;gap:8px;margin:18px 0}.fan-time-tabs button{flex:1;background:#fff9e9;border:1px solid #657158;padding:12px 8px;color:#354136;font-size:12px;cursor:pointer}.fan-time-tabs button[aria-pressed=true]{background:#344534;color:#fff9e9}.fan-time-photo{margin:14px 0 24px;padding:10px 10px 18px;background:#fffaf0;box-shadow:2px 5px 9px #0002;transform:rotate(-1deg)}.fan-time-photo img{width:100%;height:auto;display:block}.fan-time-photo figcaption{display:grid;gap:7px;margin:16px 6px 0;font-size:12px;color:#354136}.fan-time-photo figcaption b{font:16px Georgia,'Songti SC',serif}.fan-time-photo a{color:inherit}.duo-passes.fan-compact button{min-height:0!important;padding:12px!important}.duo-passes.fan-compact img,.duo-passes.fan-compact small{display:none!important}.duo-passes.fan-compact span{position:static!important;font-size:16px!important}.duo-passes.fan-compact{gap:10px!important;margin-bottom:10px!important}
/* Instant film: a square exposure, wide writing margin and four paper stocks. */
.selfie-print{position:relative;width:min(310px,100%);box-sizing:border-box;padding:14px 14px 23px;border:0;background:#fffdf4;box-shadow:1px 2px 3px #3a302c26,7px 12px 22px #3a302c25;transform:rotate(-3deg);margin:22px auto 30px}.selfie-print>small{display:block;text-align:left;letter-spacing:1.2px;font-size:8px;margin-bottom:10px;color:#82735f}.selfie-window{position:relative;display:grid;place-items:center;aspect-ratio:1;background:radial-gradient(ellipse at 50% 92%,#7f81654a,transparent 45%),#e9e1cb;box-shadow:inset 0 0 12px #403d2825;overflow:hidden}.selfie-window .selfie-pose{margin:0;position:relative;z-index:1}.selfie-print .selfie-caption{font:20px/1.6 'Kaiti SC','STKaiti','Songti SC',serif;margin:19px 0 12px;color:inherit}.print-number{display:block;font:8px/1.5 monospace;letter-spacing:1.5px;opacity:.65}.print-star{position:absolute;right:12px;top:10px;font-size:34px;color:#9a966757;transform:rotate(12deg)}.selfie-print[data-frame=mint]{background:repeating-linear-gradient(0deg,transparent 0 13px,#52725c18 13px 14px),repeating-linear-gradient(90deg,#e5efda 0 13px,#adbea7 13px 14px);color:#344d3e}.selfie-print[data-frame=mint]::before{content:'';position:absolute;top:-10px;left:32%;width:90px;height:24px;transform:rotate(6deg);background:#f6dc8ebf;z-index:2}.selfie-print[data-frame=mint] .selfie-window{background:radial-gradient(ellipse at 50% 92%,#5b79554d,transparent 45%),#cadbd2}.selfie-print[data-frame=ticket]{background:#f3bad0;color:#703e53;border-inline:6px dotted #fff1e9;padding-bottom:29px}.selfie-print[data-frame=ticket] .selfie-caption{border-top:1px dashed #9c5f79;padding-top:12px}.selfie-print[data-frame=ticket] .selfie-window{background:radial-gradient(circle at 20% 25%,#f9e39d 0 10%,transparent 10.5%),#f4dbd1}.selfie-print[data-frame=ticket] .print-star{color:#d1699577}.selfie-print[data-frame=film]{background:#293b32;color:#f2efd8;border-inline:5px dashed #d5c9ad}.selfie-print[data-frame=film]>small{color:#c4c09b}.selfie-print[data-frame=film] .selfie-window{background:radial-gradient(ellipse at 50% 92%,#a5957355,transparent 45%),#b8bbab}.selfie-print[data-frame=film] .print-star{color:#f1de8c77}.selfie-frames{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 20px}.selfie-frames button{padding:10px 3px;border:1px solid #c6b99e;background:transparent;font:11px/1.6 inherit;cursor:pointer;color:#465440}.selfie-frames button[aria-pressed=true]{border-color:#344b38;box-shadow:0 2px #344b38;background:#fff8e5}.selfie-frames i{display:block;width:24px;height:29px;background:#fffcf3;border:1px solid #bdb29e;margin:0 auto 8px;box-shadow:2px 2px #78604522}.selfie-frames [data-frame=mint] i{background:repeating-linear-gradient(90deg,#dfebd7 0 5px,#b5c6a7 5px 6px)}.selfie-frames [data-frame=ticket] i{background:#f3bad0;border-style:dashed}.selfie-frames [data-frame=film] i{background:#293b32;border-style:dashed}.selfie-album>.selfie-print{transform:rotate(3deg);margin-top:20px}.selfie-frames button:focus-visible,.letter-toggle:focus-visible,.fan-time-tabs button:focus-visible{outline:2px solid #b55473;outline-offset:3px}@media(max-width:420px){.selfie-print{width:min(270px,100%)}.personal-pocket-content .character-back{padding:17px!important}.letter-paragraph{font-size:14px}.letter-title{font-size:21px}.fan-letter-sheet .fan-letter{padding:16px}}@media(prefers-reduced-motion:reduce){.selfie-taken{animation:none}}
/* An after-show note tucked under a ticket, with its own quieter dialog shell. */
.personal-pocket-dialog[data-kind=encore]{background:#e2dac5;border:1px solid #a99a7d;box-shadow:0 24px 80px #101d1b66;padding:24px 26px 32px;overflow-x:hidden}.personal-pocket-dialog[data-kind=encore]>small,.personal-pocket-dialog[data-kind=encore]>h2{display:none}.personal-pocket-dialog[data-kind=encore]>.personal-pocket-close{position:relative;z-index:5;float:none;display:block;margin-left:auto;border:1px solid #9f9278;border-radius:50%;background:#f5eddb;color:#685b44;width:36px;height:36px;padding:0;font-size:24px}.encore-desk{position:relative;isolation:isolate;padding:24px 30px 20px;margin-top:4px}.encore-underlay{position:absolute;inset:36px 26px 116px;background:repeating-linear-gradient(0deg,transparent 0 23px,#586c4c22 23px 24px),#bfc5a2;transform:rotate(4deg);box-shadow:2px 5px 7px #49402d26;z-index:-1}.encore-paper{position:relative;min-height:355px;padding:34px 32px 28px;background:radial-gradient(#6a513414 .7px,transparent .8px) 0 0/5px 5px,#fff5d9;transform:rotate(-2deg);box-shadow:1px 2px 2px #51432620,3px 8px 16px #51432620;color:#344735}.encore-tape{position:absolute;width:114px;height:29px;top:-15px;left:calc(50% - 57px);background:repeating-linear-gradient(90deg,#f4a9b79c 0 6px,#ef98aa8a 6px 7px);transform:rotate(5deg);clip-path:polygon(0 5%,100% 0,98% 20%,100% 37%,98% 54%,100% 76%,98% 100%,0 96%,2% 72%,0 55%,2% 35%)}.encore-kicker{font:10px/1.6 monospace;letter-spacing:2px;color:#837352}.encore-paper h3{font:44px/1.25 'Kaiti SC','STKaiti','Songti SC',serif;letter-spacing:1px;margin:23px 0 30px;font-weight:600}.encore-paper h3>span{color:#c47357}.encore-message{max-width:78%;border-top:1px solid #bbae8b;padding-top:13px}.encore-count{font:9px/1.8 monospace;letter-spacing:2px;color:#998668}.encore-line{font:18px/1.9 'Kaiti SC','STKaiti','Songti SC',serif;min-height:72px;margin:7px 0 15px;text-wrap:pretty}.encore-sign{display:block;font-size:11px;line-height:1.8;color:#8c795d;padding-right:70px}.encore-sign em{display:block;font:italic 25px/1.8 Georgia,serif;color:#587252;margin-top:4px}.encore-fold{position:absolute;right:0;bottom:0;width:31px;height:31px;background:linear-gradient(135deg,#d3c6a3 49%,#e2dac5 51%);box-shadow:-2px -2px 3px #7f6c3622}.encore-panda{position:absolute;right:-5px;bottom:114px;width:151px;height:167px;object-fit:contain;transform:rotate(7deg);filter:drop-shadow(3px 6px 2px #4f49382b);pointer-events:none}.encore-ticket{display:flex;align-items:center;justify-content:space-between;gap:12px;position:relative;z-index:2;margin:24px -7px 0;padding:15px 18px;background:#f0b5c2;color:#573d43;transform:rotate(2deg);box-shadow:2px 5px 7px #44352726;border-inline:3px dotted #e2dac5}.encore-ticket small{display:block;font:8px/1.6 monospace;letter-spacing:1px}.encore-ticket b{display:block;font:14px/1.7 'Songti SC',serif;margin-top:3px}.encore-next{background:transparent;border:0;border-left:1px dashed #9f6572;padding:10px 0 10px 17px;font-size:14px;color:#573d43;cursor:pointer;white-space:nowrap}.encore-next span{margin-left:10px}.encore-next:hover{color:#873a53}.encore-next:focus-visible{outline:2px solid #8e4965;outline-offset:4px}.encore-next:disabled{cursor:default;opacity:.7}.encore-stamp{display:block;margin:20px 0 0 10px;width:max-content;transform:rotate(-9deg);border:2px double #7c865e;color:#7c865e;padding:5px 12px;font:9px/1.6 monospace;letter-spacing:2px;text-align:center}.encore-finished{background:#cad3ae}.encore-turn{animation:encore-paper-turn .35s ease-out}@keyframes encore-paper-turn{from{transform:rotate(-2deg) translateY(5px);opacity:.6}to{transform:rotate(-2deg);opacity:1}}@media(max-width:480px){.personal-pocket-dialog[data-kind=encore]{padding:15px 14px 20px}.encore-desk{padding:22px 10px 10px}.encore-paper{padding:27px 21px 25px;min-height:330px}.encore-paper h3{font-size:35px;margin:22px 0}.encore-message{max-width:82%}.encore-line{font-size:17px;min-height:92px}.encore-panda{width:112px;height:135px;right:-12px;bottom:108px}.encore-ticket{padding:13px 10px;gap:5px;margin-top:23px}.encore-ticket b{font-size:12px}.encore-next{font-size:12px;padding-left:10px}.encore-next span{margin-left:4px}.encore-underlay{inset:30px 9px 100px}.encore-sign{padding-right:45px;font-size:10px}}@media(prefers-reduced-motion:reduce){.encore-turn{animation:none}}
@media(max-width:480px){.encore-panda{right:4px;width:100px}.encore-underlay{right:14px}}
.duo-passes[hidden],.fan-stamp[hidden]{display:none!important}
/* A seat choice changes the illustration and the surrounding theatre light. */
.personal-pocket-dialog[data-kind=live-seat]{padding:22px;background:#14252e;color:#fff8e6;border-color:#667a87;box-shadow:0 22px 80px #081b25aa}.personal-pocket-dialog[data-kind=live-seat]>small,.personal-pocket-dialog[data-kind=live-seat]>h2{display:none}.personal-pocket-dialog[data-kind=live-seat]>.personal-pocket-close{background:transparent;color:#f7e3b9;border:1px solid #ffffff44;border-radius:50%;width:35px;height:35px;padding:0;font:24px sans-serif;position:relative;z-index:2}.seat-world{--scene-accent:#efb4df;--scene-paper:#f6e6f1;--scene-ink:#59364e;clear:both;padding-top:5px}.seat-world[data-scene=livehouse]{--scene-accent:#f2bd76;--scene-paper:#f0dfc2;--scene-ink:#67482c}.seat-world[data-scene=theatre]{--scene-accent:#eeb69e;--scene-paper:#efe3cd;--scene-ink:#683e32}.seat-world[data-scene=dance]{--scene-accent:#a3d7d0;--scene-paper:#dcece3;--scene-ink:#335c5a}.seat-world[data-scene=musical]{--scene-accent:#f4d16b;--scene-paper:#f6ebc6;--scene-ink:#6b4b2f}.seat-world-header small{font:9px/1.8 monospace;letter-spacing:2px;color:var(--scene-accent)}.seat-world-header h3{font:34px/1.3 'Songti SC',serif;margin:12px 0 24px;color:#fff5e7;letter-spacing:1px}.seat-choices{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:0 0 16px}.seat-choices button{border:1px solid #ffffff30;background:#ffffff05;color:#eee7d8;padding:11px 4px;font:12px/1.5 inherit;cursor:pointer;transition:background .2s,color .2s}.seat-choices button>span{display:block;font:9px/1.5 monospace;letter-spacing:2px;opacity:.65;margin-bottom:5px}.seat-choices button[aria-pressed=true]{background:var(--scene-accent);color:#19282d;border-color:var(--scene-accent);box-shadow:0 0 18px color-mix(in srgb,var(--scene-accent) 15%,transparent)}.seat-choices button:focus-visible{outline:2px solid var(--scene-accent);outline-offset:3px}.seat-scene{position:relative;margin:0;border:1px solid #ffffff24;overflow:hidden;background:#10202b;box-shadow:0 12px 28px #0003}.seat-scene-image{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.seat-scene::after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#091a21d9);pointer-events:none}.seat-scene-tag{position:absolute;top:14px;left:14px;background:#132630aa;color:#fff7e4;padding:6px 9px;font:9px/1.6 monospace;letter-spacing:2px}.seat-scene figcaption{position:absolute;bottom:22px;left:22px;right:15px;z-index:1;color:#fffaf0}.seat-scene figcaption small{display:block;font-size:10px;letter-spacing:2px;margin-bottom:9px;color:var(--scene-accent)}.seat-scene figcaption strong{display:block;font:24px/1.4 'Kaiti SC','Songti SC',serif;text-shadow:0 2px 5px #0007}.seat-admission{position:relative;display:flex;align-items:center;gap:18px;margin:18px 0 5px;padding:20px;background:var(--scene-paper);color:var(--scene-ink);border-inline:3px dotted #14252e;transform:rotate(-1deg);transition:background .2s}.seat-admission>div{flex:1}.seat-admission small{font:9px/1.7 monospace;letter-spacing:1px}.seat-admission .seat-ticket{border:0;padding:0;margin:9px 0;font-size:16px;line-height:1.5;min-height:0}.seat-description{font-size:11px;line-height:1.8;margin:0;opacity:.8}.seat-number{font:50px/1 PublicationCondensed,monospace;border-left:1px dashed #93745777;padding-left:20px;font-weight:400}.seat-perforation{display:none}@media(max-width:480px){.personal-pocket-dialog[data-kind=live-seat]{padding:16px}.seat-world-header h3{font-size:29px}.seat-choices{gap:4px}.seat-choices button{font-size:10px;padding:10px 1px}.seat-scene-image{aspect-ratio:1/1;object-fit:cover}.seat-scene figcaption{bottom:17px;left:15px}.seat-scene figcaption strong{font-size:20px}.seat-admission{padding:16px 12px;gap:10px}.seat-number{font-size:38px;padding-left:12px}.seat-admission .seat-ticket{font-size:14px}.seat-world-header small{letter-spacing:1px}}
@media(max-width:480px){.seat-scene-image{aspect-ratio:3/2;object-fit:contain}.seat-scene figcaption strong{font-size:17px}.seat-scene figcaption small{margin-bottom:5px;font-size:9px}}
