/* The adopted C layout is shared by Web, iOS and miniature ticket copies. */
.plancard.hako-ticket-c{--native-ticket-rule:color-mix(in srgb,var(--ticket-ink) 35%,var(--ticket-bg) 65%)}
.plancard.hako-ticket-c .ticketinner{border:0;border-radius:0;overflow:visible;padding-top:6px}
.plancard.hako-ticket-c .hako-ticket-media{position:relative;min-height:28px}
.plancard.hako-ticket-c .hako-ticket-media:not(.has-thumbnail){margin-bottom:6px}
.plancard.hako-ticket-c .hako-ticket-media>.planhead{position:absolute;inset:0 0 auto;height:28px;margin:0;padding:0;border:0;z-index:2;overflow:visible}
.plancard.hako-ticket-c .planserial{position:absolute;left:0;top:0;margin:0;color:var(--ticket-ink);font:700 11px/14px "Barlow Ticket",-apple-system,BlinkMacSystemFont,"Hiragino Sans",sans-serif;letter-spacing:.04em;font-synthesis:none;white-space:nowrap}
.plancard.hako-ticket-c .hako-ticket-controls{position:absolute;right:1px;top:1px;display:flex;align-items:center;gap:4px;width:max-content}
.plancard.hako-ticket-c .hako-ticket-controls > :is(.ticketedit,.ticketbell,.ticketmoney,.ticketmore){position:relative;display:grid;place-items:center;box-sizing:border-box;flex:0 0 28px;width:28px;height:28px;margin:0;padding:3px;border:1.5px solid color-mix(in srgb,var(--ticket-ink) 65%,var(--ticket-bg) 35%);border-radius:7px;background:transparent;color:var(--ticket-ink);transform:none;transition:background-color .12s}
.plancard.hako-ticket-c .hako-ticket-controls > :is(.ticketedit,.ticketbell,.ticketmoney,.ticketmore):active{background:color-mix(in srgb,var(--ticket-ink) 12%,transparent);transform:none}
.plancard.hako-ticket-c .hako-ticket-controls > :is(.ticketedit,.ticketbell,.ticketmoney,.ticketmore):focus-visible{outline:2px solid var(--ticket-ink);outline-offset:2px}
.plancard.hako-ticket-c .hako-ticket-controls .ticketedit svg{width:17px;height:17px}
.plancard.hako-ticket-c .hako-ticket-controls .ticketmoney svg{width:19px;height:19px}
.plancard.hako-ticket-c .hako-ticket-controls .ticketbell svg.hako-card-bell{display:block;width:21px;height:21px;max-width:none;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.plancard.hako-ticket-c .hako-ticket-controls .ticketmore i{width:2.5px;height:2.5px}
.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu{right:0;top:34px}
.plancard.hako-ticket-c .planthumbnail{aspect-ratio:7/4;border:0;border-radius:3px}
.plancard.hako-ticket-c .planthumbnail img{border:0;border-radius:0;object-fit:cover;object-position:50% 60%}
.plancard.hako-ticket-c .stacked-header{padding-top:34px}
.plancard.hako-ticket-c .planhero{padding:8px 0 4px}
.plancard.hako-ticket-c :is(.plantitle,.planoshis){padding-top:2px}
.plancard.hako-ticket-c .planhero .native-ticket-venue{min-height:30px;padding-block:2px}
.plancard.hako-ticket-c .planfacts{padding:6px 0}
.plancard.hako-ticket-c .planfacts :is(.planseat,.plantime-open)>.pk{display:inline-grid;grid-template-columns:minmax(0,1fr) max-content;width:3.2em;flex:0 0 3.2em;column-gap:3px;white-space:nowrap;word-break:normal;overflow-wrap:normal}
.plancard.hako-ticket-c :is(.issued-performances,.planmemo){padding:6px 0 8px}
.plancard.hako-ticket-c .planbody>.planfacts+.issued-performances,.plancard.hako-ticket-c .planbody+.issued-performances{margin-top:0;padding:6px 0 8px}
.plancard.hako-ticket-c :is(.issued-performances>h3,.planmemo>.pk){text-align:left;margin-bottom:0}
.plancard.hako-ticket-c .issued-performance:first-of-type>.issued-schedule-event:first-child{margin-top:0}
.plancard.hako-ticket-c .planactions{border:0}
.plancard.hako-ticket-c .planactions a.ticket{border-radius:5px;min-height:44px}
.hako-ticket-date-row,.plancard.hako-ticket-c .plandate{align-items:baseline}
.hako-ticket-date-row{display:flex;white-space:nowrap;font:700 19px/1.15 "Barlow Ticket",-apple-system,BlinkMacSystemFont,"Hiragino Sans",sans-serif;font-synthesis:none;font-kerning:normal;letter-spacing:0;font-variant-numeric:normal}
.hako-ticket-date-row>.hako-ticket-weekday,.plancard.hako-ticket-c .plandateweekday{display:block;flex-shrink:0;height:auto;margin-left:4px;padding:0;border:0;border-radius:0;background:transparent;font-size:13px;line-height:1.15}
@media(prefers-reduced-motion:reduce){.plancard.hako-ticket-c .hako-ticket-controls > :is(.ticketedit,.ticketbell,.ticketmoney,.ticketmore){transition:none}}

/* Keep edit and overflow on the surface; related commands live in the menu. */
.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu{color:var(--ink);width:192px;min-width:0;box-sizing:border-box;overflow:auto;overscroll-behavior:contain}
.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu button{box-sizing:border-box;min-height:44px;width:100%;font-size:12px;line-height:1.4;text-align:left}
.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu .hako-ticket-menu-command{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:9px;flex:none;height:auto;margin:0;padding:8px 10px;border:0;border-radius:7px;background:transparent;color:inherit;transform:none;cursor:pointer}
.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu .hako-ticket-menu-command+.hako-ticket-menu-command{border-top:0}
.plancard.hako-ticket-c .hako-ticket-menu-icon{position:relative;display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px}
.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu button:hover,.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu button:active{background:color-mix(in srgb,currentColor 8%,transparent)}
.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu button:focus-visible{outline:2px solid currentColor;outline-offset:-2px}

/* One flat treatment for all overflow commands, without row rules or shadows. */
.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu{background:var(--card);border-color:var(--rule);box-shadow:none;filter:none}
.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu button{border:0;box-shadow:none;filter:none}
.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu button::before,.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu button::after{content:none}
.plancard.hako-ticket-c .hako-ticket-menu-icon>svg{display:block;width:19px;height:19px}

/* Reveal only; hiding remains immediate, including during a rapid second tap. */
@keyframes hako-ticket-menu-enter{from{opacity:0;translate:0 var(--menu-enter-y,-4px)}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:no-preference){
 .plancard.hako-ticket-c .hako-ticket-controls .ticketmenu:not([hidden]){animation:hako-ticket-menu-enter 140ms cubic-bezier(.2,.75,.25,1) both}
 .plancard.hako-ticket-c .ticketmenu[data-direction="up"]{--menu-enter-y:4px}
}
@media(prefers-reduced-motion:reduce){.plancard.hako-ticket-c .hako-ticket-controls .ticketmenu{animation:none;transition:none}}

/* Give the event title 2px more air; bring the seat/time rows 2px closer. */
.plancard.hako-ticket-c .planwho .plantitle{padding-bottom:2px}
.plancard.hako-ticket-c .planfacts .planseat:has(+.plantime-open,+.plantime-start){margin-bottom:-2px}

/* An open menu can extend beyond a short ticket and above later ticket siblings. */
.plancard.hako-ticket-c:has(.ticketmenu:not([hidden])){z-index:3;overflow:visible}

/* Add 2px between the selected artists and the venue, when both are present. */
.plancard.hako-ticket-c .planhero:has(.planoshis) .native-ticket-venue{margin-top:-2px}
