/* One editor and one private pass per ticket. Mana Seed art stays pixel crisp. */
.mana-character{display:block;image-rendering:pixelated;object-fit:contain;width:100%;height:100%}
.person-tabs{display:flex;flex-wrap:wrap;gap:5px;padding:9px;background:#281634;border-bottom:1px solid #9e76b2}
.person-tabs button{max-width:100%;padding:7px 8px;border:2px outset #c7a7d7;background:#5c426e;color:#f6e6ff;font:10px monospace;overflow-wrap:anywhere}
.person-tabs button[aria-pressed=true]{background:#d6f7aa;border-color:#edffcf;color:#243419}
.character-maker .character-stage{min-height:245px;padding-top:7px}.character-stage #player-preview{width:112px;height:168px;filter:drop-shadow(4px 4px #160920)}
.person-fields{padding:10px 12px}.person-fields label{display:flex;justify-content:space-between;gap:5px;align-items:center;font:11px monospace;color:#ffe3f4;margin:0 0 5px}.person-fields label>span{font-size:8px;color:#ccb4d8}
.person-fields input,#player-name{display:block;width:100%;margin:0 0 12px;padding:9px 8px;border:2px inset #d3b0df;background:#170d24;color:#f1ffe0;font:12px monospace;min-width:0;border-radius:0}
.appearance-controls{padding:0 12px 10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 7px}.appearance-controls label{font:9px monospace;color:#f2d4f7;min-width:0}.appearance-controls select{display:block;margin-top:4px;width:100%;min-height:31px;background:#4f345f;color:#fff1fe;border:2px outset #c5a0d5;border-radius:0;font:10px monospace;padding:3px}.appearance-controls option{color:#170c25;background:#e0c3ed}
.people-error{padding:12px;background:#513348;color:#fff0d5;border:1px solid #e4ae99;margin:0 0 15px;font:12px/1.5 monospace}
.character-maker>.chrome-button{font-size:9px}.character-maker>.creator-note{font-size:8px;color:#d8bbdf}
.party-pets button.party-pet{border:0;border-radius:0;background:transparent;color:inherit;padding:0 2px;cursor:pointer;align-items:center}.party-pet .mana-character{width:41px;height:63px}.party-pet small{font:8px monospace;max-width:65px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.people-review{max-height:260px;overflow:auto;margin-bottom:18px;border:1px solid #7e5b8c;padding:8px;background:#281333}.person-review{display:flex;align-items:center;text-align:left;gap:10px;padding:5px;border-bottom:1px dashed #795086}.person-review:last-child{border-bottom:0}.person-review>div:first-child{flex:0 0 38px;width:38px;height:57px}.person-review strong,.person-review span{display:block;overflow-wrap:anywhere}.person-review strong{font:12px monospace;color:#dcffb3}.person-review span{font:11px/1.5 Arial;color:#f5def5;margin-top:4px}.person-review>div:last-child{min-width:0}
.ticket-stub>.receipt-player>div{width:58px;height:87px}.receipt-player .mana-character{height:100%;width:100%}.receipt-player>span{max-width:100%}
#ticket-dialog[data-step=saved]{width:min(960px,calc(100% - 24px))}.issued-passes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:20px 0}.issued-pass{background:#f4e4f0;color:#35143e;border:4px ridge #e9bcec;padding:17px 14px;display:flex;flex-direction:column;align-items:center;min-width:0;box-shadow:4px 4px #100718}.issued-pass h4{font:12px Silkscreen,monospace;margin:0 0 10px}.pass-portrait{width:88px;height:132px}.pass-real-name{font:bold 17px/1.3 Arial;margin:9px 0 4px;overflow-wrap:anywhere;max-width:100%}.pass-nickname{font:14px/1.5 monospace;color:#70417d;overflow-wrap:anywhere;max-width:100%}.pass-qr{width:200px;height:200px;max-width:100%;object-fit:contain;background:#fff;image-rendering:pixelated;margin:13px 0}.pass-code-label{font:bold 9px monospace}.pass-code{display:block;font:11px/1.6 monospace;overflow-wrap:anywhere;user-select:all;margin-top:5px;max-width:100%}.issued-pass p{font:10px/1.5 Arial;margin:8px 0 12px;color:#5f3967}.issued-pass .primary,.issued-pass .chrome-button{width:100%;font-size:10px;margin-top:7px;overflow-wrap:anywhere;white-space:normal}.issued-pass .primary{background:#c8f88a;color:#263b18;border-color:#839b57}.issued-pass .chrome-button{min-height:40px}
#ticket-saved>p{max-width:680px;margin:12px auto}#saved-title{font-size:29px}.chat-blade{font-size:15px;flex:.85}
.buku-window{margin-top:20px}.buku-login{padding:28px;max-width:620px;margin:auto}.buku-login h2{font:22px Silkscreen,monospace;color:#fad1ef;line-height:1.4}.buku-login p{font:12px/1.7 Arial;color:#dfc8e9;margin:16px 0}.buku-login label{display:block;font:11px monospace;color:#caff9e;margin:20px 0 7px}.buku-login input{display:block;width:100%;padding:12px;margin-bottom:14px;background:#130a1f;color:#edffe0;border:2px inset #c8a8df;font:14px monospace;border-radius:0}.buku-status{padding:12px 20px;font:11px/1.6 monospace;color:#defdba;min-height:37px}.buku-status:empty{padding:0;min-height:0}.buku-identity{display:flex;align-items:center;gap:13px;padding:14px 18px;border-bottom:1px solid #9e78b0;background:#3b2349;min-width:0}.buku-identity>#buku-avatar{width:45px;height:68px;flex:0 0 45px}.buku-identity>div:nth-child(2){min-width:0}.buku-identity span{display:block;font:9px/1.7 monospace;color:#dbbfeb}.buku-identity strong{display:block;font:17px/1.5 monospace;color:#dcffa3;overflow-wrap:anywhere}.buku-identity .chrome-button{margin-left:auto;font-size:9px}.buku-messages{height:400px;max-height:50dvh;min-height:200px;overflow:auto;padding:16px;background:#1a0d24;overscroll-behavior:contain}.buku-message{display:flex;gap:12px;padding:8px 0;border-bottom:1px dotted #513661}.message-avatar{width:34px;height:51px;flex:0 0 34px}.buku-message>div:last-child{min-width:0}.buku-message strong{font:12px/1.5 monospace;color:#ecbdf5}.buku-message span{font:8px monospace;color:#bda6cc}.buku-message p{font:13px/1.6 Arial;margin-top:4px;color:#f2e3fb;white-space:pre-wrap;overflow-wrap:anywhere}.chat-empty{font:12px monospace;color:#c6aed3;padding:30px 10px;text-align:center}#buku-send{padding:14px 18px;background:#3b224b}#buku-send label{display:block;font:10px monospace;color:#d0b3df;margin-bottom:6px}#buku-send>div{display:flex;gap:8px}#buku-message{min-width:0;flex:1;background:#160c21;color:#f5e8ff;border:2px inset #b890c8;padding:9px;font:13px Arial;border-radius:0}#buku-send button{font-size:10px;min-height:43px;padding:10px 12px}.buku-note{padding:10px 18px;color:#c7afd6;font:9px/1.6 monospace}
@media(max-width:1100px){.chat-blade{font-size:13px}.blade{gap:8px}}
@media(max-width:800px){.blade{font-size:12px;gap:4px}.blade>span{display:none}.chat-blade{font-size:11px}.person-fields{padding:9px}.appearance-controls{padding:0 9px 9px}.person-fields label{font-size:10px}.person-fields label>span{font-size:7px}.issued-pass{padding:13px 10px}.pass-real-name{font-size:15px}.pass-qr{width:180px;height:180px}}
@media(max-width:620px){.character-maker{display:grid;grid-template-columns:95px minmax(0,1fr)}.person-tabs{grid-column:1/-1;grid-row:2;padding:7px;gap:4px}.person-tabs button{font-size:9px;padding:6px}.character-maker .character-stage{grid-column:1;grid-row:3/6;min-height:0;justify-content:center;border-right:2px ridge #ad83bf;padding:8px 3px}.character-stage #player-preview{width:84px;height:126px}.person-fields{grid-column:2;grid-row:3;padding:9px 9px 0}.appearance-controls{grid-column:2;grid-row:4;padding:0 9px 8px;gap:7px 6px}.character-maker>.chrome-button{grid-column:2;grid-row:5;align-self:center;margin-bottom:8px;font-size:8px}.character-maker>.creator-note{grid-column:1/-1;grid-row:6;margin:7px 5px}.person-fields label{display:block;font-size:9px}.person-fields label>span{font-size:7px;margin-left:5px}.person-fields input,#player-name{width:100%;margin:0 0 9px;padding:7px;font-size:11px}.appearance-controls label{font-size:8px}.appearance-controls select{min-height:29px;font-size:9px}.character-stage #outfit-name{overflow-wrap:anywhere;max-width:100%;font:8px monospace}.stage-caption{font-size:7px}.person-review strong{font-size:11px}.issued-passes{grid-template-columns:1fr;max-width:390px;margin:20px auto}.pass-qr{width:220px;height:220px}.issued-pass h4{font-size:12px}.pass-code{font-size:12px}.pass-real-name{font-size:19px}.buku-login{padding:20px}.buku-login h2{font-size:18px}.buku-identity{flex-wrap:wrap;padding:12px}.buku-identity .chrome-button{width:100%;margin:0}.buku-identity strong{font-size:15px}.buku-messages{padding:12px}.buku-message{gap:9px}#buku-send{padding:12px}#buku-message{font-size:12px}.buku-note{padding:10px 12px}.buku-message p{font-size:12px}.buku-status{padding:10px 12px}}
@media(max-width:580px){.blades{flex-wrap:wrap;height:auto;min-height:49px}.blade{min-height:44px;flex:1 0 24%;font-size:11px;transform:none}.blade:first-child{border-radius:8px 0 0}.chat-blade{flex:1 0 80%;border-top:1px solid #8e78a0}.sound-toggle{flex:1 0 15%;border-top:1px solid #8e78a0}.blades .blade:nth-child(4){border-right:0}.character-stage #player-preview{width:82px;height:123px}.party-pet .mana-character{width:35px;height:53px}.party-pet small{max-width:44px;font-size:7px}}
@media(max-width:360px){.character-maker{grid-template-columns:75px minmax(0,1fr)}.character-stage #player-preview{width:67px;height:101px}.appearance-controls select{font-size:8px}.person-fields label>span{display:block;margin:2px 0}.character-maker>.chrome-button{font-size:7px}.stage-caption{font-size:6px}.appearance-controls{gap:6px 4px;padding:0 7px 7px}.person-fields{padding-left:7px;padding-right:7px}.pass-qr{width:210px;height:210px}.buku-login{padding:16px}.buku-login h2{font-size:16px}.buku-login input{font-size:12px}.ticket-order>.primary{font-size:8px}.buku-login .primary{font-size:10px}}
/* The salon stays open: browse real hair thumbnails, not a list of names. */
.hair-salon{margin:10px 12px;border:2px inset #c7a1dd;background:#21102f;min-width:0}.hair-salon summary{padding:10px;color:#deffa4;font:11px Silkscreen,monospace;cursor:pointer}.hair-salon summary span{float:right;font:9px monospace;color:#e9b5f3}.hair-search-label{display:block;padding:4px 9px;color:#ead4f5;font:10px monospace}.hair-salon input{width:calc(100% - 18px);margin:3px 9px 9px;padding:8px;background:#12091c;border:2px inset #aa8bbc;border-radius:0;color:#fff;font:12px monospace}.hair-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(73px,1fr));gap:5px;max-height:246px;overflow:auto;padding:7px;overscroll-behavior:contain;scrollbar-color:#cc9fe9 #251534}.hair-gallery button{min-width:0;border:2px outset #9874ac;background:#4a315d;color:#f2dbff;cursor:pointer;padding:3px 1px;display:flex;flex-direction:column;align-items:center;gap:3px}.hair-gallery button[aria-pressed=true]{border:2px inset #d9ffad;background:#d0f79e;color:#253c1c}.hair-gallery button:hover{background:#7f5095}.hair-gallery button:focus-visible{outline:3px solid #fff;outline-offset:-3px}.hair-gallery canvas{width:72px;height:54px;image-rendering:pixelated;max-width:100%;object-fit:contain}.hair-gallery span{font:9px/1.3 monospace;min-height:24px;display:flex;align-items:center;text-align:center;overflow-wrap:anywhere}.hair-salon p{font:9px/1.5 monospace;color:#d7b9e8;margin:8px}.creator-note a{color:#d8ffb0;text-decoration:underline}
@media(max-width:620px){.hair-salon{grid-column:1/-1;grid-row:6;margin:6px 9px}.character-maker>.creator-note{grid-row:7}.hair-gallery{grid-template-columns:repeat(auto-fill,minmax(69px,1fr));max-height:212px}.hair-salon summary{font-size:10px}}
@media(min-width:1000px){
  #ticket-dialog{width:min(1120px,calc(100% - 28px))}
  .ticket-game-grid{grid-template-columns:minmax(500px,1.3fr) minmax(320px,1fr);gap:18px}
  .character-maker{display:grid;grid-template-columns:135px minmax(0,1fr)}
  .character-maker>.mini-chrome{grid-column:1/-1;grid-row:1}
  .character-maker>.person-tabs{grid-column:1/-1;grid-row:2}
  .character-maker>.character-stage{grid-column:1;grid-row:3/7;min-height:0;justify-content:flex-start;padding-top:25px;border-right:2px ridge #ad83bf}
  .character-maker>.person-fields{grid-column:2;grid-row:3}
  .character-maker>.hair-salon{grid-column:2;grid-row:4;margin:0 10px 12px}
  .character-maker>.appearance-controls{grid-column:2;grid-row:5}
  .character-maker>.chrome-button{grid-column:2;grid-row:6}
  .character-maker>.creator-note{grid-column:1/-1;grid-row:7}
  .character-stage .stage-caption{max-width:115px;text-align:center}
  .character-stage #outfit-name{max-width:115px;overflow-wrap:anywhere;font-size:8px}
  .hair-gallery{max-height:210px}
}
