.mp-shell{width:min(1160px,calc(100% - 48px));margin:130px auto 64px}.mp-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:32px;border-bottom:1px solid #ded9e8}.mp-eyebrow,.mp-label{font:800 .66rem ui-monospace,monospace;letter-spacing:.13em;color:var(--game-purple)}.mp-heading h1{font-size:clamp(2.4rem,5vw,4.5rem);letter-spacing:-.065em;line-height:1.06;margin:16px 0}.mp-heading h1 em{font-style:normal;color:#c83c56}.mp-heading p:last-child{color:var(--game-muted);line-height:1.6;margin-bottom:0}.mp-connection{display:flex;gap:12px;align-items:center;font:700 .72rem ui-monospace,monospace;white-space:nowrap}.mp-connection>span:before{content:'';display:inline-block;width:7px;height:7px;background:#a39bad;border-radius:50%;margin-right:8px}.mp-connection>span[data-online=true]:before{background:#25834d}.mp-text-button{background:none;border:0;text-decoration:underline;color:var(--game-ink);font:inherit;padding:8px;cursor:pointer}.mp-notice{background:#faf0e5;color:#654a2a;padding:16px 20px;border-left:3px solid #ca8341;line-height:1.5}.mp-entry{display:grid;grid-template-columns:1.05fr 1fr;gap:70px;padding:48px 0;animation:mp-arrive .3s ease}.mp-art{min-height:390px;position:relative;display:grid;place-content:center;background:#332b50;border-radius:3px 64px 3px 3px;overflow:hidden;color:#fff}.mp-art:before,.mp-art:after{content:'';position:absolute;width:230px;height:320px;border:1px solid #9a87b5;transform:rotate(-20deg);left:35%;top:8%;border-radius:10px}.mp-art:after{transform:rotate(12deg);left:17%;top:22%;border-color:#b7a2cf}.mp-art strong{position:relative;z-index:1;display:block;font-size:clamp(4rem,8vw,7.5rem);line-height:.88;letter-spacing:-.07em;padding:45px 26px;background:#332b50}.mp-art span{position:absolute;left:26px;bottom:26px;color:#dfcced;font:700 .68rem ui-monospace,monospace;letter-spacing:.14em}.mp-form{align-self:center}.mp-game-switch{display:flex;gap:24px;margin-bottom:30px;border-bottom:1px solid #ded9e8}.mp-game-switch a{color:var(--game-muted);padding-bottom:12px;text-decoration:none;font-weight:700}.mp-game-switch a[aria-current=page]{color:var(--game-ink);border-bottom:3px solid #c83c56}.mp-form label{display:block;font-size:.82rem;font-weight:700;margin:18px 0 9px}.mp-form input{width:100%;background:#fff;border:1px solid #c8c0d4;border-radius:6px;padding:14px;font:inherit;color:var(--game-ink);min-height:48px}.mp-form fieldset{border:0;padding:0;margin:0;min-width:0}.mp-form input:focus,.mp-button:focus-visible,.mp-choice:focus-visible,.mp-role:focus-visible{outline:3px solid #b9a8de;outline-offset:3px}.mp-button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:12px 24px;font:700 .85rem inherit;border:1px solid #3d355f;background:#3d355f;color:#fff;border-radius:6px;cursor:pointer;transition:transform .15s,background .15s}.mp-button:hover:not(:disabled){background:#52436e;transform:translateY(-2px)}.mp-button.secondary{background:transparent;color:var(--game-ink);border-color:#c8c0d4}.mp-button.secondary:hover:not(:disabled){background:#f0ebf6}.mp-button:disabled,.mp-choice:disabled{opacity:.5;cursor:not-allowed}.mp-create{width:100%;margin-top:18px}.mp-divider{display:flex;gap:15px;align-items:center;margin:26px 0;color:var(--game-muted);font-size:.72rem}.mp-divider:before,.mp-divider:after{content:'';height:1px;background:#ded9e8;flex:1}.mp-join{display:flex;gap:10px}.mp-join input{text-transform:uppercase;letter-spacing:.12em;min-width:0}.mp-small{font-size:.77rem;line-height:1.7;color:var(--game-muted)}.mp-room-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;padding:26px 0;border-bottom:1px solid #ded9e8}.mp-room-code{font:800 1.6rem ui-monospace,monospace;letter-spacing:.15em}.mp-room-bar .mp-label{display:block;margin-bottom:7px}.mp-timer{font:700 1.15rem ui-monospace,monospace;text-align:right}.mp-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:60px;padding:36px 0}.mp-phase-title{font-size:2rem;letter-spacing:-.05em;margin:8px 0 12px}.mp-roster{padding:0;list-style:none;margin:26px 0}.mp-player{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid #eee9f3}.mp-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#eee8f6;font-weight:800;flex-shrink:0}.mp-player-name{flex:1;overflow-wrap:anywhere}.mp-player-name small{display:block;font-size:.68rem;color:var(--game-muted);margin-top:4px}.mp-player-score{font:700 .85rem ui-monospace,monospace}.mp-player.out{opacity:.55}.mp-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.mp-aside{border-left:1px solid #ded9e8;padding-left:30px}.mp-aside h2{font-size:1rem;margin:26px 0 10px}.mp-role{display:block;width:100%;min-height:215px;border:0;border-radius:6px 30px 6px 6px;background:#3d355f;color:white;padding:25px;text-align:left;cursor:pointer;transition:background .2s,transform .2s}.mp-role:hover{transform:translateY(-3px)}.mp-role span{display:block;font:700 .62rem ui-monospace,monospace;letter-spacing:.15em;color:#ded1f1}.mp-role strong{display:block;margin:38px 0 20px;font-size:1.7rem;letter-spacing:-.04em}.mp-role small{color:#ded1f1}.mp-role.revealed{background:#584273;animation:mp-reveal .22s ease}.mp-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:25px 0}.mp-choice{padding:18px;text-align:left;background:#fff;border:1px solid #d5cce1;border-radius:6px;font:700 .9rem inherit;color:var(--game-ink);cursor:pointer;overflow-wrap:anywhere}.mp-choice[aria-pressed=true]{border-color:#7358c9;background:#f0eaf9;box-shadow:inset 0 0 0 1px #7358c9}.mp-confirm{padding:18px;background:#f8f5fb;margin-bottom:22px}.mp-rules{border-top:1px solid #ded9e8;margin-top:28px;padding:24px 0}.mp-rules summary{font-weight:700;cursor:pointer;min-height:36px}.mp-rules-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:15px}.mp-rules h2{font-size:1rem}.mp-rules p{font-size:.82rem;color:var(--game-muted);line-height:1.75}.mp-footer{width:min(1160px,calc(100% - 48px));margin:0 auto;padding:24px 0 36px;border-top:1px solid #ded9e8;display:flex;justify-content:space-between;gap:20px;font-size:.77rem;color:var(--game-muted)}.mp-footer a{color:var(--game-ink)}[hidden]{display:none!important}@keyframes mp-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes mp-reveal{from{opacity:.6;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(max-width:800px){.mp-entry{gap:30px}.mp-art{min-height:360px}.mp-layout{gap:30px;grid-template-columns:minmax(0,1fr) 240px}.mp-rules-grid{grid-template-columns:1fr}.mp-heading{align-items:flex-start;flex-direction:column}.mp-aside{padding-left:20px}}
@media(max-width:600px){.mp-shell{width:calc(100% - 36px);margin-top:110px}.mp-entry{grid-template-columns:1fr;gap:25px;padding:28px 0}.mp-art{min-height:150px;max-height:180px;border-radius:3px 38px 3px 3px}.mp-art strong{font-size:3.5rem;padding:18px;background:transparent}.mp-art strong br{display:none}.mp-art span{left:20px;bottom:15px;font-size:.56rem}.mp-art:before,.mp-art:after{width:95px;height:130px;left:65%;top:10%;opacity:.5}.mp-art:after{left:50%}.mp-layout{grid-template-columns:1fr;gap:24px;padding:24px 0}.mp-aside{border-left:0;border-top:1px solid #ded9e8;padding:24px 0 0}.mp-role{min-height:160px}.mp-role strong{margin:20px 0}.mp-footer{width:calc(100% - 36px);flex-direction:column}.mp-timer{font-size:.85rem}.mp-room-code{font-size:1.3rem}.mp-heading h1{font-size:2.7rem}.mp-choices{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.mp-entry,.mp-role.revealed{animation:none}.mp-button,.mp-role{transition:none}.mp-button:hover:not(:disabled),.mp-role:hover{transform:none}}
.mp-form select,.mp-talk select{width:100%;min-height:48px;padding:12px;border:1px solid #c8c0d4;border-radius:6px;background:#fff;color:var(--game-ink);font:inherit}.mp-form select:focus-visible,.mp-talk select:focus-visible{outline:3px solid #b9a8de;outline-offset:3px}.mp-bot{display:block;font:700 .62rem ui-monospace,monospace;color:var(--game-purple);margin-top:6px}.mp-talk{border-top:1px solid #ded9e8;margin:28px 0;padding-top:18px}.mp-talk h2{font-size:1.2rem}.mp-talk ol{list-style:none;padding:0;max-height:300px;overflow:auto;overflow-wrap:anywhere}.mp-talk li{padding:12px 0;border-bottom:1px solid #eee9f3;font-size:.8rem}.mp-talk li p{margin:6px 0;line-height:1.6}.mp-talk label{display:block;margin:18px 0 10px;font-size:.82rem;font-weight:700}.mp-talk .mp-actions{margin-top:14px}
