/* Partner dashboards (partners/dashboard.php) and the login page (partners/login.php, woocommerce/myaccount/*), in the event pages'
   world: night header, day block of frosted cards, Archivo + Geist, purple pills. Loads after events.css, which carries the
   blocks, chips, Buzzy and the tokens. Shapes: pills for everything you press, 24px cards, 14px fields.
   The .pd-switch-card rules at the end stand alone: they draw the switch on the normal My Account page. */

body:is(.devt-dash-page,.devt-login-page,.devt-account-page) .page-title{display:none} /* WoodMart's title bar */
/* ponytail: WoodMart reads the virtual /dashboard/ query as a blog page and adds its phone "show sidebar" button (it sat on the
   switch) and a sidebar of blog widgets; hidden here rather than steering WoodMart's layout choice. */
body.devt-dash-page :is(.wd-sidebar-opener,.wd-sidebar){display:none!important}

/* ---------- Night header ---------- */
.devt .pd-head{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;padding-top:clamp(28px,4vw,48px);padding-bottom:150px} /* minmax: a long username beside Buzzy grew the grid and pushed the switch off phones */
.devt .pd-admin{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:10px 12px 10px 14px;border:1px solid var(--glass-line);border-radius:20px;background:var(--glass);box-shadow:inset 0 1px 0 var(--glass-hi)}
.devt .pd-admin-tag{padding:6px 10px;border-radius:999px;background:var(--bolt);color:#1E1030;font:600 12px/1 var(--sans)}
.devt .pd-admin-who{min-width:0;color:var(--ink-2);font:500 14px/1.3 var(--sans);overflow-wrap:anywhere}
.devt .pd-admin-who b{color:var(--ink);font-weight:700}
.devt .pd-admin-link{margin-left:auto;color:var(--bolt);font:600 14px/1 var(--sans);text-decoration:none;white-space:nowrap}
.devt .pd-admin-link:hover{text-decoration:underline}
.devt .pd-admin-link:focus-visible{outline:2px solid var(--bolt);outline-offset:3px;border-radius:4px}
/* The admin's Organizers | Artists list (partners/dashboard.php) */
.devt .pd-people{display:grid;margin:0;padding:0;list-style:none}
.devt .pd-people li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--rule);font:500 15px/1.3 var(--sans)}
.devt .pd-people li span{min-width:0;overflow-wrap:anywhere}
.devt .pd-hello{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 32px}
.devt .pd-hello-text{display:grid;gap:10px;min-width:0}
.devt .pd-kind{margin:0;color:var(--bolt);font:500 12px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.devt .pd-title{margin:0;color:var(--ink);font:800 clamp(38px,5.4vw,72px)/.9 var(--display);font-stretch:68%;letter-spacing:-.01em;text-transform:uppercase;text-wrap:balance;overflow-wrap:break-word;animation:devt-rise .5s var(--settle) both}
/* The row under the greeting (danbuzz_partner_top()): people with a work space get the space switch (My account, Studio, Events),
   kept dark on every device, with Log out as a round button beside it (user picks 2026-10-09); everyone else a plain Log out link. */
.devt .pd-top{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}
.devt .pd-sw-i{flex:none;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.devt .pd-switch{display:grid;grid-template-columns:1fr 1fr;flex:1 1 auto;max-width:440px;padding:4px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(16,8,26,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.08);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.devt .pd-switch a{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:46px;padding:0 8px;border-radius:999px;color:rgba(255,255,255,.86);font:600 15px/1 var(--sans);text-decoration:none;white-space:nowrap;transition:background-color .2s var(--ease),color .2s var(--ease),transform .12s var(--ease)}
.devt .pd-switch a:hover{color:#fff}
.devt .pd-switch a[aria-current]{background:#fff;color:#1E1030;box-shadow:0 8px 18px -10px rgba(0,0,0,.6)}
.devt .pd-switch a[aria-current] .pd-sw-i{color:var(--accent)}
.devt .pd-logout{margin-left:auto;color:var(--ink-2);font:500 15px/1 var(--sans);text-decoration:underline;text-decoration-color:rgba(255,255,255,.4);text-underline-offset:4px}
.devt .pd-logout:hover{color:var(--ink);text-decoration-color:var(--bolt)}
.devt .pd-logout .pd-sw-i{display:none}
.devt .pd-switch+.pd-logout{display:grid;place-items:center;flex:none;width:52px;height:52px;margin:0;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(16,8,26,.42);color:#fff;text-decoration:none;transition:background-color .2s var(--ease),transform .12s var(--ease)}
.devt .pd-switch+.pd-logout:hover{background:rgba(255,255,255,.14)}
.devt .pd-switch+.pd-logout .pd-sw-i{display:block;width:20px;height:20px}
.devt .pd-switch+.pd-logout span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap} /* still its accessible name */
.devt :is(.pd-switch a,.pd-switch+.pd-logout):active{transform:scale(.97)}
.devt .pd-top.is-switch{flex-wrap:nowrap;gap:10px} /* the round Log out never drops under the switch */
@media (max-width:359px){.devt .pd-switch .pd-sw-i{display:none}} /* 320px phones: the labels need the room */
/* Three spaces (My account, Studio, Events): a column each; on phones the icon sits over the label, so all three fit with Log out */
.devt .pd-switch.is-3{grid-template-columns:repeat(3,minmax(0,1fr));max-width:560px}
@media (max-width:540px){
	.devt .pd-switch.is-3 a{flex-direction:column;gap:4px;padding:0 4px;font-size:12.5px}
	.devt .pd-switch.is-3 .pd-sw-i{width:18px;height:18px}
}
@media (max-width:359px){ /* stacked, the icons fit on 320px phones too; a touch smaller, so "My account" keeps its margins */
	.devt .pd-switch.is-3 a{padding:0 2px;font-size:11.5px}
	.devt .pd-switch.is-3 .pd-sw-i{display:block}
}
/* Under the switch: "◀ All events" inside an event, and "Organizer | Artist" for someone who is both. Dark like the switch, no blur. */
.devt .pd-nav{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.devt .pd-back{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 20px 0 14px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(16,8,26,.42);color:#fff;font:600 15px/1 var(--sans);text-decoration:none;white-space:nowrap;transition:background-color .2s var(--ease)}
.devt .pd-back .devt-i{width:18px;height:18px;stroke-width:2.2}
.devt .pd-back:hover{background:rgba(255,255,255,.14);color:#fff}
.devt .pd-view{display:inline-flex;padding:3px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(16,8,26,.42)}
.devt .pd-view a{display:inline-flex;align-items:center;height:44px;padding:0 16px;border-radius:999px;color:rgba(255,255,255,.86);font:600 14px/1 var(--sans);text-decoration:none;white-space:nowrap}
.devt .pd-view a:hover{color:#fff}
.devt .pd-view a[aria-current]{background:#fff;color:#1E1030}
.devt :is(.pd-back,.pd-view a):focus-visible{outline:2px solid var(--bolt);outline-offset:2px;border-radius:999px}
.devt .pd-tag.is-day{padding:3px 7px;border-radius:6px;background:rgba(81,42,116,.12);color:var(--ink-2);font:500 10px/1.2 var(--mono);letter-spacing:.06em;text-transform:uppercase;vertical-align:middle} /* Draft, Private… on the day block */
.devt .pd-tag.is-ended{padding:5px 9px;border-radius:999px;background:#E4E0EC;color:#3A2E50;font-size:11px;letter-spacing:.08em;vertical-align:.45em}

/* ---------- The Events home: a card per event, On now, Upcoming, Ended (1 column on phones, 2 from 768px, 3 from 1100px) ---------- */
.devt .pd-evs-group{display:grid;gap:14px}
.devt .pd-evs-h{display:flex;align-items:center;gap:12px;margin:0;color:var(--ink-3);font:500 12px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.devt .pd-evs-h::after{content:"";flex:1;height:1px;background:var(--rule)}
.devt .pd-evs{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin:0;padding:0;list-style:none}
.devt .pd-evs li{min-width:0;margin:0;padding:0}
.devt .pd-evc{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;height:100%;box-sizing:border-box;padding:10px 12px 10px 10px;border:1px solid var(--glass-line);border-radius:20px;background:rgba(255,255,255,.74);box-shadow:inset 0 1px 0 var(--glass-hi),0 26px 50px -36px rgba(42,21,64,.55);color:var(--ink);text-decoration:none;transition:transform .25s var(--settle),border-color .2s var(--ease)}
.devt .pd-evc:hover{border-color:var(--accent);color:var(--ink);transform:translateY(-3px)}
.devt .pd-evc:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:20px}
.devt .pd-evc-pic{position:relative;align-self:start;aspect-ratio:4/5;overflow:hidden;border-radius:14px;background:#1E1030}
.devt .pd-evc-pic img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover} /* a fixed box: lazy sizes="auto" reads 96/112px */
.devt .pd-evc-none{position:absolute;inset:0;background:radial-gradient(80% 60% at 80% 10%,rgba(139,61,255,.55),transparent 70%),linear-gradient(160deg,#512A74,#1E1030)}
.devt .pd-evc-body{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;padding:4px 26px 2px 0}
.devt .pd-evc-body p{margin:0}
.devt .pd-evc-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.devt .pd-evc-tags .pd-tag{vertical-align:baseline}
.devt .pd-evc-state{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font:600 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.devt .pd-evc-state.is-live{background:#15803D;color:#fff}
.devt .pd-evc-state.is-live::before{content:"";width:7px;height:7px;border-radius:50%;background:#B7F5C8;box-shadow:0 0 0 3px rgba(183,245,200,.3)}
.devt .pd-evc-state.is-soon{background:#EDE3FC;color:#5B14A8}
.devt .pd-evc-state.is-ended{background:#E4E0EC;color:#3A2E50}
.devt .pd-evc-title{margin:0;color:var(--ink);font:800 22px/.94 var(--display);font-stretch:68%;letter-spacing:0;text-transform:uppercase;text-wrap:balance;overflow-wrap:anywhere}
.devt .pd-evc-when{color:var(--ink-3);font:500 12px/1.35 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.devt .pd-evc-nums{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px;width:calc(100% + 26px);margin:auto -26px 0 0!important;padding-top:9px;border-top:1px solid var(--rule);color:var(--ink-3);font:500 13px/1.2 var(--sans)}
.devt .pd-evc-nums b{margin-right:2px;color:var(--ink);font:800 20px/1 var(--display);font-stretch:70%;font-variant-numeric:tabular-nums}
.devt .pd-evc-nums b :is(.amount,bdi,.woocommerce-Price-currencySymbol){font:inherit;color:inherit}
.devt .pd-evc-go{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(130,36,227,.1);color:var(--accent)}
.devt .pd-evc-go .devt-i{width:16px;height:16px;stroke-width:2.2}
.devt .pd-evc.is-live{border-color:rgba(21,128,61,.55);box-shadow:0 0 0 2px rgba(21,128,61,.25),0 26px 50px -36px rgba(42,21,64,.55)}
/* Ended: the poster fades, an ink stamp across it (the ticket stubs' stamp, in white) */
.devt .pd-evc.is-ended{background:rgba(255,255,255,.58)}
.devt .pd-evc.is-ended .pd-evc-pic :is(img,.pd-evc-none){filter:saturate(.35) brightness(.7)}
.devt .pd-evc-stamp{position:absolute;left:50%;top:33%;z-index:2;padding:5px 7px 4px;border:2px solid #fff;border-radius:7px;outline:1.5px solid #fff;outline-offset:2px;background:rgba(11,11,12,.5);color:#fff;font:800 15px/1 var(--display);font-stretch:75%;letter-spacing:.12em;text-transform:uppercase;transform:translate(-50%,-50%) rotate(-12deg);text-shadow:0 1px 6px rgba(0,0,0,.35);box-shadow:0 1px 6px rgba(0,0,0,.2)}
.devt .pd-evs-foot .pd-muted{margin:0}
.devt .pd-evs-foot .pd-btn{height:44px}
@media (min-width:641px){
	.devt .pd-evc{grid-template-columns:112px minmax(0,1fr);gap:16px;padding:12px 14px 12px 12px;border-radius:22px}
	.devt .pd-evc:focus-visible{border-radius:22px}
	.devt .pd-evc-title{font-size:25px}
	.devt .pd-evc-nums b{font-size:22px}
	.devt .pd-evc-stamp{padding:6px 9px 5px;border-width:3px;font-size:19px}
}
@media (min-width:768px){.devt .pd-evs{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}
@media (min-width:1100px){.devt .pd-evs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (prefers-reduced-motion:reduce){.devt .pd-evc{transition:none}.devt .pd-evc:hover{transform:none}}

/* ---------- Day block: the cards ---------- */
.devt .pd-body{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;padding-top:28px;padding-bottom:210px}
.devt .pd-body>section:not(.pd-card){padding-block:0} /* the block pads every direct <section> like an event page section */
.devt-dash .devt-block+.devt-block{margin-top:-1px} /* no hairline between the blocks */
.devt .pd-notice{margin:0;padding:14px 18px;border:1px solid rgba(245,197,24,.7);border-radius:16px;background:rgba(255,250,228,.9);color:var(--ink);font:500 15px/1.4 var(--sans)}
.devt .pd-card,.devt .pd-body>.pd-card{padding:clamp(18px,2.2vw,28px);border:1px solid var(--glass-line);border-radius:24px;background:var(--glass);box-shadow:inset 0 1px 0 var(--glass-hi),0 26px 50px -36px rgba(42,21,64,.55);-webkit-backdrop-filter:blur(16px) saturate(1.2);backdrop-filter:blur(16px) saturate(1.2)}
.devt .pd-card-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px 20px;margin-bottom:16px}
.devt .pd-card-head h3{margin:0;color:var(--ink);font:700 24px/1.1 var(--display);font-stretch:75%;letter-spacing:-.01em}
.devt .pd-card-head p{margin:4px 0 0;color:var(--ink-3);font:400 14px/1.4 var(--sans)}
.devt .pd-empty{display:grid;justify-items:center;gap:10px;padding:40px 24px;text-align:center}
.devt .pd-empty h2,.devt .pd-empty h3{margin:0;font:800 30px/1 var(--display);font-stretch:70%;text-transform:uppercase}
.devt .pd-empty p{max-width:52ch;margin:0;color:var(--ink-2)}
.devt .pd-empty.is-small{padding:26px 22px}
.devt .pd-muted{color:var(--ink-3);font-size:13px;line-height:1.4}
.devt .pd-aside{margin:-6px 4px 0}
/* On-spot poster QR (under the Gate scanner) */
.devt .pd-onspot-body{display:grid;grid-template-columns:180px minmax(0,1fr);align-items:center;gap:22px}
.devt .pd-onspot-body .pd-muted{margin:12px 0 0;max-width:60ch}
.devt .pd-onspot-qr{display:block;width:180px;height:180px;padding:8px;border-radius:16px;background:#fff;image-rendering:pixelated}
@media (max-width:599px){.devt .pd-onspot-body{grid-template-columns:minmax(0,1fr);justify-items:start}}
/* Audition videos: when they leave the server (top of Buyers) */
.devt .pd-wipe{margin:0 0 16px}
.devt .pd-wipe.is-soon{border-color:#E5484D;background:#FFF0F0}
.devt .pd-wa{display:inline-flex;align-items:center;margin-left:8px;padding:2px 9px;border-radius:999px;background:#15803D;color:#fff!important;font:600 12px/1.6 var(--sans);text-decoration:none!important;white-space:nowrap}
.devt .pd-wa:hover{background:#116A32}

/* The event bar: its name, when and the artist's role, the range, the exports */
.devt .pd-bar{position:relative;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px 24px}
.devt .pd-bar-text{display:grid;gap:6px;min-width:0}
.devt .pd-event{margin:0;color:var(--ink);font:800 clamp(28px,3vw,40px)/.95 var(--display);font-stretch:68%;letter-spacing:-.01em;text-transform:uppercase;text-wrap:balance}
.devt .pd-when{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0;color:var(--ink-3);font:500 14px/1.4 var(--sans)}
.devt .pd-range{display:inline-flex;padding:4px;border:1px solid var(--glass-line);border-radius:999px;background:var(--glass);box-shadow:inset 0 1px 0 var(--glass-hi)}
.devt .pd-range a{display:inline-flex;align-items:center;height:44px;padding:0 13px;border-radius:999px;color:var(--ink-2);font:600 14px/1 var(--sans);text-decoration:none;white-space:nowrap}
.devt .pd-range a[aria-current]{background:#fff;color:var(--ink);box-shadow:0 6px 14px -10px rgba(42,21,64,.6)}
@media (max-width:359px){.devt .pd-range a{padding:0 8px;font-size:13px}} /* 320px phones: the four ranges fit */
.devt .pd-actions,.devt .pd-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.devt .pd-toast{position:absolute;right:0;top:calc(100% + 8px);z-index:3;margin:0;padding:10px 14px;border-radius:14px;background:#1E1030;color:#fff;font:500 13px/1.3 var(--sans);opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .2s var(--ease),transform .2s var(--ease)}
.devt .pd-toast.is-on{opacity:1;transform:none}

/* Buttons: pills. Glass by default, purple for the main one, red for what can't be undone, WhatsApp's accessible green. */
.devt .pd-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:42px;margin:0;padding:0 18px;border:1px solid var(--glass-line);border-radius:999px;background:rgba(255,255,255,.72);color:var(--ink);font:600 14px/1 var(--sans);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .2s var(--ease),transform .12s var(--ease)}
.devt .pd-btn:hover{background:#fff;color:var(--ink)}
.devt .pd-btn:active{transform:translateY(1px)}
.devt .pd-btn:disabled{opacity:.5;cursor:default}
.devt .pd-btn.is-primary{border-color:transparent;background:var(--accent);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 12px 24px -16px rgba(130,36,227,.9)}
.devt .pd-btn.is-primary:hover{background:var(--accent-press);color:#fff}
.devt .pd-btn.is-danger{border-color:rgba(180,35,24,.35);background:#fff;color:#B42318}
.devt .pd-btn.is-danger:hover{background:#FEF3F2}
.devt .pd-btn.is-whatsapp{border-color:#15803D;background:#15803D;color:#fff}
.devt .pd-btn.is-whatsapp:hover{background:#116A32;color:#fff}
.devt .pd-btn.is-wide{width:100%;height:54px;font-size:16px}
.devt .pd-inline{display:inline;margin:0}

/* Numbers at a glance */
.devt .pd-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}
.devt .pd-kpi,.devt .pd-body .pd-kpi{display:grid;gap:6px;padding:20px 22px}
.devt .pd-kpi-label{margin:0;color:var(--ink-3);font:500 11px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.devt .pd-kpi-value{margin:0;color:var(--ink);font:800 clamp(30px,3vw,40px)/1 var(--display);font-stretch:70%;font-variant-numeric:tabular-nums}
.devt .pd-kpi-meta{margin:0;color:var(--ink-3);font:400 13px/1.4 var(--sans)}
.devt .pd-kpi.is-pay .pd-kpi-value{color:var(--accent)}

/* Daily sales (inline SVG bars, a tooltip on each) and the ticket mix */
.devt .pd-pair{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:22px}
.devt .pd-chart{margin:0}
.devt .pd-chart svg{display:block;width:100%;height:190px}
.devt .pd-chart rect{fill:var(--accent);transition:fill .15s var(--ease)}
.devt .pd-chart rect:hover{fill:#512A74}
.devt .pd-chart rect.is-zero{fill:rgba(81,42,116,.18)}
.devt .pd-chart-axis{display:flex;justify-content:space-between;margin-top:8px;color:var(--ink-3);font:500 12px/1 var(--mono)}
.devt .pd-mix{display:grid;gap:14px;margin:0;padding:0;list-style:none}
.devt .pd-mix li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px}
.devt .pd-mix-name{overflow:hidden;font:600 15px/1.3 var(--sans);text-overflow:ellipsis;white-space:nowrap}
.devt .pd-mix-num{color:var(--ink-3);font:500 13px/1.3 var(--mono);font-variant-numeric:tabular-nums}
.devt .pd-mix-bar{grid-column:1/-1;display:block;height:6px}
.devt .pd-mix-bar span{display:block;height:100%;border-radius:999px;background:var(--accent)}

/* People: buyers (organizers) and participants (artists, names only) */
.devt .pd-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
.devt .pd-search input{box-sizing:border-box;width:min(240px,100%);height:42px;margin:0;padding:0 16px;border:1px solid rgba(81,42,116,.22);border-radius:999px;background:#fff;color:var(--ink);font:400 15px var(--sans)}
.devt .pd-search input:focus{outline:2px solid var(--accent);outline-offset:1px}
.devt .pd-check{display:inline-flex;align-items:center;gap:8px;margin:0;color:var(--ink-2);font:500 14px/1.2 var(--sans);cursor:pointer}
.devt .pd-check input{width:18px;height:18px;margin:0;accent-color:var(--accent)}
.devt .pd-table-wrap{overflow-x:auto}
.devt .pd-table{width:100%;margin:0;border-collapse:collapse;font-size:14px}
.devt .pd-table th{padding:0 12px 10px;border:0;color:var(--ink-3);font:500 11px/1.2 var(--mono);letter-spacing:.08em;text-align:left;text-transform:uppercase;white-space:nowrap}
.devt .pd-table td{padding:13px 12px;border:0;border-top:1px solid var(--rule);color:var(--ink);vertical-align:top}
.devt .pd-table tr[hidden]{display:none}
.devt .pd-table .is-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.devt .pd-table .is-pay{color:var(--accent);font-weight:600}
.devt .pd-name{display:block;font-weight:600}
.devt .pd-order{color:var(--ink-3);font-family:var(--mono)}
.devt .pd-nowrap{white-space:nowrap}
.devt .pd-guests,.devt .pd-in,.devt .pd-place{display:block;margin-top:2px;font-size:13px;line-height:1.4}
.devt .pd-guests{color:var(--ink-2)}
.devt .pd-in{color:#0B7A52;font-weight:500}
.devt .pd-aka{display:block;margin-top:2px;color:#6C1BC4;font-size:13px;font-style:italic;font-weight:600;line-height:1.4} /* stage or crew name */
.devt .pd-pill{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:3px 11px;border:1px solid rgba(81,42,116,.2);border-radius:999px;background:#fff;color:var(--ink);font:500 13px/1.2 var(--sans);text-decoration:none;cursor:pointer}
.devt a.pd-pill:hover{border-color:var(--accent);color:var(--ink)}
.devt .pd-pill .devt-i{width:13px;height:13px}
.devt .pd-pill.is-muted{border-style:dashed;background:transparent;color:var(--ink-3);cursor:default}
.devt .pd-pill.is-danger{border-color:rgba(180,35,24,.3);color:#B42318}
.devt .pd-audits{min-width:220px}
.devt .pd-audition{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:6px}
.devt .pd-nomatch{margin:14px 12px 0;color:var(--ink-3)}
.devt .pd-pager{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:16px;padding-top:14px;border-top:1px solid var(--rule)} /* 20 to a page (partners.js) */
.devt .pd-pager[hidden]{display:none}
.devt .pd-page{min-width:38px;height:38px;padding:0 12px;border:1px solid rgba(81,42,116,.2);border-radius:999px;background:#fff;color:var(--ink);font:600 14px/1 var(--sans);font-variant-numeric:tabular-nums;cursor:pointer;transition:background-color .2s var(--ease),border-color .2s var(--ease)}
.devt .pd-page:hover:not(:disabled){border-color:var(--accent)}
.devt .pd-page[aria-current]{border-color:transparent;background:var(--accent);color:#fff}
.devt .pd-page:disabled{opacity:.4;cursor:default}
.devt .pd-page-of{margin-left:auto;color:var(--ink-3);font:500 13px/1.2 var(--sans)}
.devt .pd-player{width:min(92vw,760px);padding:14px;border:0;border-radius:24px;background:#140A20;color:#fff}
.devt .pd-player::backdrop{background:rgba(18,8,32,.72)}
.devt .pd-player video{display:block;width:100%;max-height:70vh;border-radius:14px;background:#000}
.devt .pd-player .pd-row{justify-content:flex-end;margin-top:12px}

/* Money: the artist's breakdown, the sums, the payments and the admin's form */
.devt .pd-split{display:grid;gap:12px;max-width:560px;margin:0 0 18px}
.devt .pd-split div{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.devt .pd-split dt{color:var(--ink-2);font:500 15px/1.35 var(--sans)}
.devt .pd-split dt small{display:block;color:var(--ink-3);font-size:12px}
.devt .pd-split dd{margin:0;font:600 17px/1 var(--sans);font-variant-numeric:tabular-nums}
.devt .pd-split .is-total{margin-top:4px;padding-top:14px;border-top:1px solid var(--rule)}
.devt .pd-split .is-total dt{color:var(--ink);font-weight:700}
.devt .pd-split .is-total dd{color:var(--accent);font:800 30px/1 var(--display);font-stretch:70%}
.devt .pd-sums{display:flex;flex-wrap:wrap;gap:12px 40px;margin:0 0 16px}
.devt .pd-sums p{display:grid;gap:4px;margin:0}
.devt .pd-sums>p>span{color:var(--ink-3);font:500 11px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.devt .pd-sums b{font:800 28px/1 var(--display);font-stretch:70%;font-variant-numeric:tabular-nums}
.devt .pd-sums .is-due b{color:var(--accent)}
.devt .pd-pay{display:grid;gap:0;margin:0 0 16px;padding:0;list-style:none}
.devt .pd-pay li{display:grid;grid-template-columns:110px 110px minmax(0,1fr) minmax(0,1.4fr) auto;align-items:center;gap:6px 14px;padding:10px 0;border-top:1px solid var(--rule);font-size:14px}
.devt .pd-pay-date{color:var(--ink-3);font-family:var(--mono);font-size:13px}
.devt .pd-pay-ref{font-family:var(--mono);font-size:13px}
.devt .pd-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;padding-top:16px;border-top:1px dashed var(--rule)}
.devt .pd-form label{display:grid;gap:6px;color:var(--ink-2);font:500 13px/1 var(--sans)}
.devt .pd-form input{box-sizing:border-box;width:160px;height:42px;margin:0;padding:0 12px;border:1px solid rgba(81,42,116,.22);border-radius:12px;background:#fff;color:var(--ink);font:400 15px var(--sans)}

/* ---------- The login page (the user's reference, 2026-09-29): a split card on the night block. Left, three photos that
   change every 5 s under the logo, "Back to website" and the tagline; right, WooCommerce's forms on the card's dark plum.
   Buzzy stands on the card's top edge: he pops up from behind it (his SVG sits under the card, his bubble over it). ---------- */
.devt .pd-login-page{padding-top:clamp(104px,10vw,136px);padding-bottom:220px}
.devt .pd-login{position:relative;max-width:1120px;margin:0 auto}
.devt .pd-login-card{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.04fr);gap:clamp(24px,4vw,64px);padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:30px;background:#211632;box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 60px 100px -50px rgba(6,2,14,.95);animation:devt-rise .6s var(--settle) both}

/* The photo side */
.devt .pd-login-side{display:grid;min-width:0}
.devt .pd-login-side>*{grid-area:1/1} /* the tagline and dots lie over the photo's foot */
.devt .pd-login-photo{position:relative;isolation:isolate;min-height:min(680px,calc(100dvh - 180px));padding:24px 24px 24px 28px;overflow:hidden;border-radius:20px;background:#3A0A0C}
.devt .pd-login-slide{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);transition:opacity 1.2s var(--ease),transform 7s linear}
.devt .pd-login-slide.is-on{opacity:1;transform:none}
.devt .pd-login-photo::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(18,6,26,.6),rgba(18,6,26,0) 22%,rgba(18,6,26,0) 60%,rgba(18,6,26,.78) 84%,rgba(18,6,26,.94))}
.devt .pd-login-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.devt .pd-login-logo{display:block;width:clamp(104px,10vw,128px);height:auto}
.devt .pd-login-back{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 14px 0 16px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(255,255,255,.14);color:#fff;font:500 14px/1 var(--sans);text-decoration:none;white-space:nowrap;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:background-color .2s var(--ease)}
.devt .pd-login-back:hover{background:rgba(255,255,255,.26);color:#fff}
.devt .pd-login-back .devt-i{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;transition:transform .25s var(--settle)}
.devt .pd-login-back:hover .devt-i{transform:translateX(3px)}
.devt .pd-login-foot{position:relative;z-index:1;align-self:end;display:grid;justify-items:center;gap:12px;padding:0 24px 16px;text-align:center}
.devt .pd-login-tag{max-width:24ch;margin:0;color:#fff;font:500 clamp(24px,2.2vw,30px)/1.14 var(--sans);letter-spacing:-.025em;text-wrap:balance;text-shadow:0 2px 24px rgba(18,6,26,.6);animation:devt-rise .7s var(--settle) .35s both}
.devt .pd-login-dots{display:flex;gap:2px}
.devt .pd-login-dots[hidden]{display:none}
.devt .pd-login-dots button{position:relative;width:44px;height:24px;min-height:0;margin:0;padding:0;border:0;background:none;box-shadow:none;cursor:pointer}
.devt .pd-login-dots button::before{content:"";position:absolute;inset:10px 0;border-radius:999px;background:rgba(255,255,255,.38);transform:scaleX(.66);transition:transform .35s var(--settle),background-color .35s var(--ease)} /* the current bar stretches; the row never reflows */
.devt .pd-login-dots button:hover::before{background:rgba(255,255,255,.7)}
.devt .pd-login-dots button[aria-current=true]::before{background:#fff;transform:none}
.devt .pd-login-dots button:focus-visible{outline:2px solid #fff;outline-offset:2px;border-radius:6px}

/* The form side: WooCommerce's forms in the card's colours */
.devt .pd-login-form{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:clamp(28px,4vw,56px) clamp(10px,3vw,44px) clamp(28px,4vw,56px) 0;color:#fff}
.devt .pd-auth{--ink:#fff;--ink-2:rgba(255,255,255,.74);--ink-3:rgba(255,255,255,.58);--rule:rgba(255,255,255,.12);display:grid;gap:30px;width:100%;max-width:440px;color:var(--ink)}
.devt .pd-auth-pane{display:grid;gap:12px}
.devt .pd-auth-pane[hidden]{display:none}
.devt .pd-auth-pane+.pd-auth-pane{padding-top:30px;border-top:1px solid var(--rule)} /* without JS the two forms stack */
.devt .pd-auth.is-picked .pd-auth-pane{padding-top:0;border-top:0}
.devt .pd-auth-pane>*,.devt .pd-auth-form>*{animation:devt-rise .5s var(--settle) both} /* each field rises in turn, again when the other form opens */
.devt .pd-auth-pane>:nth-child(2){animation-delay:.06s}
.devt .pd-auth-pane>:nth-child(3){animation-delay:.1s}
.devt .pd-auth-form>:nth-child(2){animation-delay:.16s}
.devt .pd-auth-form>:nth-child(3){animation-delay:.21s}
.devt .pd-auth-form>:nth-child(4){animation-delay:.26s}
.devt .pd-auth-form>:nth-child(n+5){animation-delay:.31s}
.devt .pd-auth-h{margin:0;color:#fff;font:600 clamp(36px,4vw,50px)/1.02 var(--sans);letter-spacing:-.035em;text-wrap:balance}
.devt .pd-auth-sub{margin:0 0 14px;color:var(--ink-2);font:400 15px/1.5 var(--sans)}
.devt .pd-auth a:not(.pd-btn,.pd-role){color:#fff;font-weight:500;text-decoration:underline;text-decoration-color:rgba(185,155,232,.8);text-decoration-thickness:1px;text-underline-offset:4px;transition:text-decoration-color .2s var(--ease)}
.devt .pd-auth a:not(.pd-btn,.pd-role):hover{color:#fff;text-decoration-color:#fff}
.devt .pd-auth-form{display:grid;gap:14px;margin:0}
.devt .pd-auth-form.woocommerce-form-login{display:grid!important} /* WoodMart's woo-mod-login-form.css forces display:block !important, which drops the gaps */
.devt .pd-field{display:grid;gap:7px;margin:0}
.devt .pd-field label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap} /* the placeholder shows it */
.devt .pd-auth input:is([type=text],[type=email],[type=password]){box-sizing:border-box;width:100%;height:56px;margin:0;padding:0 18px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:rgba(255,255,255,.07);color:#fff;font:400 16px var(--sans);box-shadow:none;transition:border-color .2s var(--ease),background-color .2s var(--ease),box-shadow .2s var(--ease)}
.devt .pd-auth input::placeholder{color:rgba(255,255,255,.5);opacity:1}
.devt .pd-auth input:is([type=text],[type=email],[type=password]):hover{border-color:rgba(255,255,255,.2)}
.devt .pd-auth input:is([type=text],[type=email],[type=password]):focus{border-color:#B99BE8;background:rgba(255,255,255,.1);outline:0;box-shadow:0 0 0 4px rgba(130,36,227,.32)}
.devt .pd-auth input:-webkit-autofill{-webkit-text-fill-color:#fff;caret-color:#fff;box-shadow:inset 0 0 0 60px #362A47} /* autofill paints its own light box otherwise */
.devt .pd-auth input:-webkit-autofill:focus{box-shadow:inset 0 0 0 60px #3B2E4E,0 0 0 4px rgba(130,36,227,.32)}
/* WooCommerce's show-password button (woocommerce.js wraps each password field) */
.devt .pd-auth .password-input{position:relative;display:block}
.devt .pd-auth .password-input input{padding-inline-end:56px!important} /* WoodMart forces its 42px with !important: text would run under the eye */
.devt .pd-auth .show-password-input{position:absolute;top:50%;right:8px;width:42px;height:42px;min-height:0;margin:-21px 0 0;padding:0;border:0;border-radius:10px;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/20px no-repeat;box-shadow:none;font-size:0;opacity:.6;cursor:pointer;transition:opacity .2s var(--ease)}
.devt .pd-auth .show-password-input.display-password{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3l18 18M10.6 5.1Q11.3 5 12 5c6.4 0 10 7 10 7a17.6 17.6 0 0 1-3.2 4.1M6.6 6.6C3.9 8.4 2 12 2 12s3.6 7 10 7a9.8 9.8 0 0 0 5.4-1.6M9.9 9.9a3 3 0 0 0 4.2 4.2'/%3E%3C/svg%3E")}
.devt .pd-auth .show-password-input:hover{opacity:1}
.devt .pd-auth .show-password-input:focus-visible{outline:2px solid #B99BE8;outline-offset:0;opacity:1}
.devt .pd-auth .show-password-input::before,.devt .pd-auth .show-password-input::after{display:none}
.devt .pd-auth-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 8px}
.devt .pd-auth .pd-check{color:var(--ink-2)}
.devt .pd-auth .pd-check input{accent-color:#8224E3}
.devt .pd-auth .pd-btn.is-primary{height:56px;border:0;border-radius:14px;background:#8224E3;box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 18px 30px -18px rgba(130,36,227,.95);transition:background-color .2s var(--ease),transform .2s var(--settle),box-shadow .2s var(--ease)}
.devt .pd-auth .pd-btn.is-primary:hover{background:#9036F0;transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 22px 34px -18px rgba(130,36,227,1)}
.devt .pd-auth .pd-btn.is-primary:active{transform:translateY(1px) scale(.99)}
.devt .pd-auth .pd-btn.is-primary:focus-visible{outline:2px solid #fff;outline-offset:3px}
.devt .pd-auth-note,.devt .pd-auth .woocommerce-privacy-policy-text{margin:6px 0 0;color:var(--ink-3);font-size:13px;line-height:1.5}
.devt .pd-auth-back{margin:4px 0 0}
/* Who is logging in (form-login.php; the user's reference, 2026-10-04: Bolt's "Register" menu). Under the form, a row each for
   studios and for organizers: a drawn icon, a bold title, one grey line, a chevron. The chosen role sits above the
   form in violet with Change. */
.devt .pd-roles{display:grid;gap:12px;padding-top:28px;border-top:1px solid var(--rule);animation:devt-rise .5s var(--settle) .36s both}
.devt .pd-roles-h{margin:0;color:var(--ink-3);font:500 14px/1.4 var(--sans)}
.devt .pd-roles ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.devt .pd-roles li{margin:0;padding:0}
.devt .pd-role{display:grid;grid-template-columns:40px minmax(0,1fr) auto;grid-template-areas:"i t go" "i l go";align-items:center;gap:3px 14px;box-sizing:border-box;margin:0;padding:14px 14px 14px 16px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.04)}
.devt a.pd-role{min-height:72px;color:#fff;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background-color .2s var(--ease),border-color .2s var(--ease)}
.devt a.pd-role:hover{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff}
.devt a.pd-role:active{background:rgba(255,255,255,.11)}
.devt a.pd-role:focus-visible{outline:2px solid #B99BE8;outline-offset:2px}
.devt .pd-role-i{grid-area:i;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:rgba(185,155,232,.16);color:#D9C8F5}
.devt .pd-role-i svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.devt .pd-role-t{grid-area:t;align-self:end;margin:0;color:#fff;font:600 16px/1.3 var(--sans);letter-spacing:-.01em}
.devt .pd-role-line{grid-area:l;align-self:start;margin:0;color:var(--ink-3);font:400 14px/1.4 var(--sans)}
.devt .pd-role .pd-role-go{grid-area:go;width:20px;height:20px;color:var(--ink-3);stroke-width:2;transition:transform .25s var(--settle),color .2s var(--ease)}
.devt a.pd-role:hover .pd-role-go{color:#fff;transform:translateX(3px)}
.devt .pd-role.is-chosen{grid-template-areas:"i t ch" "i l l";padding:12px 8px 14px 16px;border-color:rgba(185,155,232,.42);background:rgba(130,36,227,.2);animation:devt-rise .5s var(--settle) both}
.devt .pd-role.is-chosen:not(:has(.pd-role-line)){grid-template-areas:"i t ch"}
.devt .pd-role.is-chosen .pd-role-i{background:rgba(185,155,232,.24);color:#fff}
.devt .pd-role.is-chosen .pd-role-t{align-self:center;text-wrap:balance}
.devt .pd-role.is-chosen .pd-role-line{color:var(--ink-2)}
.devt .pd-auth .pd-role-change{grid-area:ch;display:inline-flex;align-items:center;min-height:44px;padding:0 8px;font-size:14px}
@media (max-width:480px){ /* phones: the title keeps one line; Change goes under the help line */
	.devt .pd-role{grid-template-columns:36px minmax(0,1fr) auto;column-gap:12px;padding:12px 10px 12px 14px}
	.devt .pd-role-i{width:36px;height:36px;border-radius:11px}
	.devt .pd-role-i svg{width:20px;height:20px}
	.devt .pd-role-t{font-size:15px}
	.devt .pd-role.is-chosen,.devt .pd-role.is-chosen:not(:has(.pd-role-line)){grid-template-columns:36px minmax(0,1fr);grid-template-areas:"i t" "i l" "i ch";padding:12px 14px 4px}
	.devt .pd-role.is-chosen .pd-role-i{align-self:start}
	.devt .pd-auth .pd-role-change{justify-self:start;margin-left:-8px}
}
.devt .pd-login :is(.woocommerce-error,.woocommerce-message,.woocommerce-info){max-width:440px;margin:0 0 20px;padding:14px 18px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.08);color:#fff;list-style:none;font:500 14px/1.45 var(--sans)}
.devt .pd-login .woocommerce-error{border-color:rgba(253,162,155,.45);background:rgba(240,68,56,.16);color:#FEE4E2}
.devt .pd-login :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) a{color:#fff;text-decoration:underline}
.devt .pd-login :is(.woocommerce-error,.woocommerce-message,.woocommerce-info)::before{display:none}
.devt .pd-login .woocommerce-error li{margin:0}

/* Buzzy on the card's edge: he pops up from behind it after the card lands, waves, then reacts (partners.js) */
.devt .pd-login-buzzy{position:absolute;right:clamp(24px,7%,84px);bottom:calc(100% - 2px);cursor:pointer;-webkit-tap-highlight-color:transparent;user-select:none}
.devt .pd-login-buzzy svg{position:relative;z-index:0}
.devt .pd-login-buzzy .devt-bz-say{z-index:2;animation-delay:1.5s}
.devt .pd-login-buzzy .bz-in-hop{animation-delay:.45s,1.55s}
.devt .pd-login-buzzy .bz-in-hop .m-arm-b{animation-delay:1.5s}
.devt .pd-login-buzzy[data-face=idle] .bz-shades{transform:translateY(-25px) scale(.9)} /* shades on his cap, so his eyes can follow you */
.devt .pd-login-buzzy.is-shy .bz-shades{transform:none} /* a password: shades down, eyes shut */
.devt .pd-login-buzzy .m-eyes circle{translate:var(--ex,0) var(--ey,0);transition:translate .18s var(--ease)}
.devt .pd-login-buzzy .m-head{transform-origin:50px 72px;transition:rotate .35s var(--settle)}
.devt .pd-login-buzzy.is-shy .m-head{rotate:-7deg}
.devt .pd-login-buzzy.is-typing .m-head{animation:pd-bz-bop .5s ease-in-out infinite}
.devt .pd-login-buzzy.is-jump svg{animation:pd-bz-jump .6s var(--settle)}
@keyframes pd-bz-bop{0%,100%{rotate:0deg}30%{rotate:4deg}70%{rotate:-3deg}}
@keyframes pd-bz-jump{0%{transform:none}30%{transform:translateY(-22px) rotate(-6deg)}55%{transform:translateY(0) scale(1.06,.92)}75%{transform:translateY(-5px) scale(.98,1.03)}100%{transform:none}}
@media (max-width:860px){ /* one column: the photo as a band on top, the form under it */
	.devt .pd-login-page{padding-top:100px;padding-bottom:170px}
	.devt .pd-login-card{grid-template-columns:minmax(0,1fr);gap:0;padding:10px;border-radius:26px}
	.devt .pd-login-photo{min-height:0;height:clamp(250px,70vw,340px);padding:16px 16px 16px 18px;border-radius:18px}
	.devt .pd-login-photo::after{background:linear-gradient(180deg,rgba(18,6,26,.6),rgba(18,6,26,0) 30%)}
	.devt .pd-login-slide:nth-of-type(2){object-position:50% 0} /* its top word clears the Back pill */
	.devt .pd-login-slide:nth-of-type(3){object-position:50% 12%} /* its words sit high in the photo */
	.devt .pd-login-foot{grid-area:2/1;gap:6px;padding:20px 8px 0} /* under the photo: the band is too short for the signs and the tagline */
	.devt .pd-login-tag{font-size:clamp(20px,5.4vw,26px);text-shadow:none}
	.devt .pd-login-form{padding:30px 12px 18px}
	.devt .pd-auth{max-width:none}
	.devt .pd-login-buzzy svg{width:80px;height:80px}
	.devt .pd-login-buzzy{right:18px}
}

@media (max-width:959px){
	.devt .pd-pair{grid-template-columns:minmax(0,1fr)}
	.devt .pd-pay li{grid-template-columns:minmax(0,1fr) auto;align-items:start}
	.devt .pd-pay li .pd-muted{grid-column:1}
}
@media (max-width:720px){
	.devt .pd-hello .devt-buzzy svg{width:72px;height:72px}
	.devt .pd-logout{margin-left:0}
	.devt .pd-hello{gap:12px}
	.devt .pd-title{font-size:clamp(30px,9.4vw,38px)} /* "ARKAJIT.DANBUZZ" beside Buzzy without breaking */
	.devt .pd-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
	.devt .pd-kpi,.devt .pd-body .pd-kpi{padding:16px}
	/* Tables become one card per person: each cell brings its own label */
	.devt .pd-table thead{display:none}
	.devt .pd-table,.devt .pd-table tbody{display:block}
	.devt .pd-table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 14px;margin-bottom:12px;padding:14px;border:1px solid rgba(81,42,116,.14);border-radius:18px;background:rgba(255,255,255,.7)}
	.devt .pd-table td{display:block;padding:0;border:0}
	.devt .pd-table td::before{content:attr(data-label);display:block;margin-bottom:3px;color:var(--ink-3);font:500 10px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase}
	.devt .pd-table td:is([data-label=Buyer],[data-label=Name],[data-label=Audition]){grid-column:1/-1}
	.devt .pd-table .is-num{text-align:left}
	.devt .pd-search,.devt .pd-search input{width:100%}
	.devt .pd-form input{width:100%}
	.devt .pd-form label{flex:1 1 140px}
}
@media (prefers-reduced-transparency:reduce){
	.devt .pd-card{-webkit-backdrop-filter:none;backdrop-filter:none;background:#F7F4FC}
	.devt .pd-switch{-webkit-backdrop-filter:none;backdrop-filter:none;background:#2A1740} /* night header: stays dark */
}

/* ---------- My Account, logged in (partners/account.php and woocommerce/myaccount/*): the menu as glass pills beside a light
   card that holds every account page; the first page gets upcoming tickets, the credits card and quick links ---------- */
.devt .pd-acc{display:grid;grid-template-columns:250px minmax(0,1fr);align-items:start;gap:24px}
.devt .pd-acc :is(.woocommerce-MyAccount-navigation,.woocommerce-MyAccount-content){flex:none;float:none;width:auto;max-width:none;margin:0} /* WooCommerce floats them at 30% / 68%, WoodMart caps the content at 75% (65% on tablets) */
body.devt-account-page .devt .pd-acc .woocommerce-MyAccount-content{display:block} /* the site's Additional CSS hides it on phones for an old "dzy" dashboard this page doesn't print */
.devt .pd-acc-nav{position:sticky;top:96px;padding:8px;border:1px solid var(--glass-line);border-radius:24px;background:var(--glass);box-shadow:inset 0 1px 0 var(--glass-hi),0 26px 50px -36px rgba(42,21,64,.55);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.devt .pd-acc-nav ul{display:grid;gap:3px;margin:0;padding:0;list-style:none}
.devt .pd-acc-nav li{margin:0;padding:0;border:0}
.devt .pd-acc-nav a{display:flex;align-items:center;gap:12px;min-height:46px;padding:0 14px;border-radius:15px;color:var(--ink-2);font:500 15px/1.2 var(--sans);text-decoration:none;transition:background-color .2s var(--ease),color .2s var(--ease)}
.devt .pd-acc-nav a:hover{background:rgba(255,255,255,.75);color:var(--ink)}
.devt .pd-acc-nav a[aria-current]{background:var(--accent);color:#fff;box-shadow:0 12px 24px -16px rgba(130,36,227,.9)}
.devt .pd-acc-nav svg{flex:none;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.devt .pd-acc-content{min-width:0;padding:clamp(20px,2.6vw,34px);border:1px solid rgba(255,255,255,.9);border-radius:28px;background:rgba(255,255,255,.84);box-shadow:inset 0 1px 0 #fff,0 30px 60px -40px rgba(42,21,64,.55);color:var(--ink)}
/* What WooCommerce and the plugins print inside: headings, tables, forms, their buttons */
.devt .pd-acc-content>:is(h2,h3,h4):first-child{margin-top:0}
.devt .pd-acc-content :is(h2,h3,h4){color:var(--ink);font-family:var(--sans);font-weight:700;letter-spacing:-.01em}
.devt .pd-acc-content table.shop_table{width:100%;margin:0;border:0;border-collapse:collapse}
.devt .pd-acc-content table.shop_table :is(th,td){padding:13px 12px;border:0;border-bottom:1px solid var(--rule);text-align:left;vertical-align:middle}
.devt .pd-acc-content table.shop_table th{color:var(--ink-3);font:500 11px/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.devt .pd-acc-content :is(.woocommerce-button,.woocommerce-Button,a.button,button.button){display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 18px;border:0;border-radius:999px;background:var(--accent);color:#fff;font:600 14px/1 var(--sans);text-transform:none;letter-spacing:0;box-shadow:none}
.devt .pd-acc-content :is(.woocommerce-button,.woocommerce-Button,a.button,button.button):hover{background:var(--accent-press);color:#fff}
.devt .pd-acc-content .woocommerce-form-row label{color:var(--ink);font:600 14px/1.3 var(--sans)}
.devt .pd-acc-content .woocommerce-form-row :is(input.input-text,select){box-sizing:border-box;width:100%;height:48px;padding:0 14px;border:1px solid rgba(81,42,116,.25);border-radius:12px;background:#fff;color:var(--ink);font:400 16px var(--sans)}
.devt .pd-acc-content .woocommerce-form-row input.input-text:focus{border-color:var(--accent);outline:0;box-shadow:0 0 0 4px rgba(130,36,227,.16)}
.devt .pd-acc-body :is(.woocommerce-error,.woocommerce-message,.woocommerce-info){margin:0 0 18px;padding:14px 18px;border:1px solid rgba(81,42,116,.14);border-radius:16px;background:#fff;color:var(--ink);list-style:none;font:500 14px/1.45 var(--sans)}
.devt .pd-acc-body .woocommerce-error{border-color:rgba(180,35,24,.3);background:#FEF3F2;color:#912018}
.devt .pd-acc-body :is(.woocommerce-error,.woocommerce-message,.woocommerce-info)::before{display:none}

/* WoodMart's own sidebar around the menu (25% wide, a "My account" title, a rule; hidden on phones by the site's Additional CSS).
   partners.php unhooks it; should it ever come back, only our menu shows */
body.devt-account-page .devt .pd-acc>.wd-my-account-sidebar{display:contents!important}
body.devt-account-page .devt .pd-acc>.wd-my-account-sidebar>:not(.pd-acc-nav){display:none!important}

/* The first page */
.devt .pd-acc-dash{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px}
.devt .pd-acc-card{display:grid;align-content:start;gap:14px;padding:22px;border:1px solid rgba(81,42,116,.12);border-radius:22px;background:#fff}
.devt .pd-acc-tickets{grid-row:span 2;align-self:start} /* its own height, not an empty white column */
.devt .pd-acc-card h2{margin:0;color:inherit;font:800 26px/1 var(--display);font-stretch:70%;letter-spacing:0;text-transform:uppercase}
.devt .pd-acc-card-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 14px}
.devt .pd-acc-none{display:grid;justify-items:center;gap:10px;padding:20px 12px 8px;text-align:center}
.devt .pd-acc-none p{margin:0;color:var(--ink-2)}
.devt .pd-acc-none-h{color:var(--ink)!important;font:800 26px/1 var(--display);font-stretch:70%;text-transform:uppercase}
.devt .pd-acc-none .devt-buzzy{margin-bottom:4px}
.devt .pd-acc-credits{border:0;background:radial-gradient(120% 90% at 100% 0,rgba(233,184,255,.55),transparent 55%),linear-gradient(135deg,#4A0FA8,#8224E3 60%,#9D48EE);color:#fff;box-shadow:0 30px 50px -30px rgba(123,31,224,.8)}
.devt .pd-acc-kicker{margin:0;color:rgba(255,255,255,.8);font:500 11px/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase}
.devt .pd-acc-balance{display:flex;align-items:center;gap:10px;margin:0;font:800 58px/1 var(--display);font-stretch:70%;font-variant-numeric:tabular-nums}
.devt .pd-acc-balance .devt-i{width:34px;height:34px;color:var(--bolt)}
.devt .pd-acc-sub{margin:0;color:rgba(255,255,255,.85);font-size:14px}
.devt .pd-acc-credits .pd-btn.is-primary{background:#fff;color:#4A1591;box-shadow:none}
.devt .pd-acc-credits .pd-btn.is-primary:hover{background:#F4EAFF;color:#4A1591}
.devt .pd-acc-credits .devt-link{color:#fff;text-decoration-color:rgba(255,255,255,.6)}
.devt .pd-acc-quick{display:grid;gap:10px}
.devt .pd-acc-quick a{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 12px;padding:15px 18px;border:1px solid rgba(81,42,116,.12);border-radius:18px;background:#fff;color:var(--ink);text-decoration:none;transition:border-color .2s var(--ease),transform .2s var(--settle)}
.devt .pd-acc-quick a:hover{border-color:var(--accent);color:var(--ink);transform:translateY(-2px)}
.devt .pd-acc-quick b{font:600 16px/1.2 var(--sans)}
.devt .pd-acc-quick span{grid-column:1;color:var(--ink-3);font-size:13px}
.devt .pd-acc-quick .devt-i{grid-column:2;grid-row:1/3;color:var(--accent)}

/* Every other page: its heading and a line on what it holds (my-account.php) */
.devt .pd-acc-page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:10px 20px;margin:0 0 22px;padding-bottom:18px;border-bottom:1px solid var(--rule)}
.devt .pd-acc-page-head h2{margin:0;color:var(--ink);font:800 clamp(30px,3vw,42px)/.92 var(--display);font-stretch:68%;letter-spacing:0;text-transform:uppercase}
.devt .pd-acc-page-head p{margin:8px 0 0;color:var(--ink-3);font:400 15px/1.45 var(--sans)}

/* ---------- My Tickets: Upcoming / Completed / Cancelled, each booking a ticket stub (orders.php, danbuzz_account_stub()) ---------- */
.devt .pd-tabs{display:flex;gap:4px;width:max-content;max-width:100%;margin:0 0 24px;padding:5px;overflow-x:auto;border:1px solid rgba(81,42,116,.12);border-radius:999px;background:#F3EEF9;scrollbar-width:none}
.devt .pd-tabs[hidden]{display:none}
.devt .pd-tabs button{display:inline-flex;align-items:center;gap:9px;min-height:44px;margin:0;padding:0 18px;border:0;border-radius:999px;background:transparent;box-shadow:none;color:var(--ink-2);font:600 15px/1 var(--sans);letter-spacing:0;text-transform:none;white-space:nowrap;cursor:pointer;transition:background-color .2s var(--ease),color .2s var(--ease)}
.devt .pd-tabs button span{min-width:26px;padding:5px 7px;border-radius:999px;background:rgba(81,42,116,.1);font:600 12px/1 var(--mono);text-align:center}
.devt .pd-tabs button:hover:not([aria-selected=true]){background:rgba(255,255,255,.85);color:var(--ink)}
.devt .pd-tabs button[aria-selected=true]{background:var(--ink);color:#fff;box-shadow:0 12px 22px -12px rgba(18,16,22,.7)}
.devt .pd-tabs button[aria-selected=true] span{background:var(--bolt);color:var(--ink)}
.devt .pd-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.devt .pd-tab-h{margin:30px 0 14px;color:var(--ink);font:800 24px/1 var(--display)!important;font-stretch:70%;text-transform:uppercase} /* without JS the groups stack */
.devt .is-tabbed .pd-tab-h{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.devt .pd-tab-panel[hidden]{display:none}
.devt .pd-tab-panel:focus-visible{outline:2px solid var(--accent);outline-offset:8px;border-radius:14px}

.devt .pd-stubs{display:grid;gap:20px;margin:0;padding:0;list-style:none}
.devt .pd-stub{margin:0;padding:0;filter:drop-shadow(0 18px 20px rgba(42,21,64,.13)) drop-shadow(0 2px 2px rgba(42,21,64,.08));transition:transform .4s var(--settle)}
.devt .pd-stub:hover{transform:translateY(-3px) rotate(-.35deg)}
/* the paper: two half-moon notches cut where the tear line runs (and a gate punch once it's been used), by masks, so the drop
   shadow above follows the real edge */
.devt .pd-stub-card{--side:168px;--notch:12px;position:relative;display:grid;grid-template-columns:128px minmax(0,1fr) var(--side);min-height:180px;overflow:hidden;border-radius:18px;background:#FFFDF8;
	-webkit-mask:radial-gradient(circle var(--notch) at calc(100% - var(--side)) 0,#0000 97%,#000),radial-gradient(circle var(--notch) at calc(100% - var(--side)) 100%,#0000 97%,#000),var(--punch,linear-gradient(#000,#000));-webkit-mask-composite:source-in;
	mask:radial-gradient(circle var(--notch) at calc(100% - var(--side)) 0,#0000 97%,#000),radial-gradient(circle var(--notch) at calc(100% - var(--side)) 100%,#0000 97%,#000),var(--punch,linear-gradient(#000,#000));mask-composite:intersect}
.devt .pd-stub.is-completed .pd-stub-card{--punch:radial-gradient(circle 9px at calc(100% - var(--side) / 2) 64%,#0000 96%,#000)} /* punched at the gate */
.devt .pd-stub-pic{position:relative;display:block;overflow:hidden;background:#1E1030}
.devt .pd-stub-pic img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s var(--settle),filter .4s var(--ease)}
.devt .pd-stub:hover .pd-stub-pic img{transform:scale(1.06)}
.devt .pd-stub-body{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:20px;padding:20px 22px}
.devt .pd-stub-date{display:grid;justify-items:center;min-width:66px;margin:0;padding-right:20px;border-right:1px solid var(--rule);color:var(--ink);text-align:center}
.devt .pd-stub-date b{font:800 66px/.82 var(--display);font-stretch:62%;letter-spacing:-.01em}
.devt .pd-stub-date span{margin-top:8px;color:var(--accent);font:600 12px/1.3 var(--mono);letter-spacing:.14em;text-transform:uppercase}
.devt .pd-stub-info{display:grid;gap:6px;min-width:0}
.devt .pd-stub-info p{margin:0}
.devt .pd-stub-meta{color:var(--accent);font:500 12px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.devt .pd-stub .pd-stub-title{margin:0;font:800 clamp(22px,2.1vw,29px)/.96 var(--display);font-stretch:68%;letter-spacing:0;text-transform:uppercase;text-wrap:balance}
.devt .pd-stub-title a{color:var(--ink);text-decoration:none}
.devt .pd-stub-title a:hover{color:var(--accent)}
.devt .pd-stub-types{color:var(--ink-2);font:500 14px/1.45 var(--sans)}
.devt .pd-stub-types .amount{color:var(--ink);font-weight:700}
.devt .pd-stub-note{color:#8A5300;font:500 13px/1.4 var(--sans)}
.devt .pd-stub-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.devt .pd-acc-content .pd-stub-acts .pd-btn:not(.is-primary){min-height:40px;border:1px solid rgba(81,42,116,.22);background:transparent;color:var(--ink)}
.devt .pd-acc-content .pd-stub-acts .pd-btn:not(.is-primary):hover{border-color:var(--accent);background:#fff;color:var(--accent)}
/* the stub you'd tear off: barcode, booking number, the ink stamp */
.devt .pd-stub-side{display:grid;align-content:space-between;justify-items:center;gap:12px;padding:20px 16px;border-left:2px dashed rgba(18,16,22,.2);background:linear-gradient(180deg,#F7F1FF,#F1E8FD)}
.devt .pd-stub-code{width:100%;height:48px;background:repeating-linear-gradient(90deg,var(--ink) 0 2px,#0000 2px 4px,var(--ink) 4px 5px,#0000 5px 8px,var(--ink) 8px 11px,#0000 11px 12px,var(--ink) 12px 13px,#0000 13px 17px);opacity:.82}
.devt .pd-stub-no{color:var(--ink-3);font:600 12px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase}
.devt .pd-stub-stamp{--ink-c:var(--accent);display:inline-block;padding:7px 11px 6px;border:3px solid var(--ink-c);border-radius:8px;outline:1.5px solid var(--ink-c);outline-offset:2px;color:var(--ink-c);font:800 18px/1 var(--display);font-stretch:75%;letter-spacing:.1em;text-transform:uppercase;transform:rotate(-9deg);opacity:.88;
	-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='70'%3E%3Cfilter id='s'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' seed='4'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3.2 2.5'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23s)'/%3E%3C/svg%3E");
	mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='70'%3E%3Cfilter id='s'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' seed='4'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -3.2 2.5'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23s)'/%3E%3C/svg%3E")} /* worn rubber-stamp ink */
.devt .is-ink-green .pd-stub-stamp{--ink-c:#15803D}
.devt .is-ink-amber .pd-stub-stamp{--ink-c:#B45309}
.devt .is-ink-red .pd-stub-stamp{--ink-c:#B42318}
.devt .is-ink-violet .pd-stub-stamp{--ink-c:#6D28D9}
.devt .is-ink-grey .pd-stub-stamp{--ink-c:#6B6475}
.devt .pd-tab-panel:not([hidden]) .pd-stub-stamp,.devt .pd-stubs.is-compact .pd-stub-stamp{animation:pd-stamp .55s var(--settle) calc(.15s + var(--i,0) * 90ms) both} /* thunk */
@keyframes pd-stamp{0%{opacity:0;transform:rotate(-9deg) scale(2)}60%{opacity:.95;transform:rotate(-9deg) scale(.9)}100%{opacity:.88;transform:rotate(-9deg) scale(1)}}
/* a used ticket fades a little; a cancelled one loses its colour and its title is struck */
.devt .pd-stub.is-completed .pd-stub-pic img{filter:saturate(.55)}
.devt .pd-stub.is-completed .pd-stub-date span{color:var(--ink-3)}
.devt .pd-stub.is-cancelled .pd-stub-card{background:#FBF8F8}
.devt .pd-stub.is-cancelled .pd-stub-pic img{filter:grayscale(1) contrast(.9)}
.devt .pd-stub.is-cancelled .pd-stub-title a{text-decoration:line-through;text-decoration-color:rgba(180,35,24,.55);text-decoration-thickness:2px}
.devt .pd-stub.is-cancelled .pd-stub-side{background:linear-gradient(180deg,#FBF1F0,#F6E7E6)}
/* on the first page, three smaller stubs */
.devt .pd-stubs.is-compact{gap:14px}
.devt .pd-stubs.is-compact .pd-stub-card{--side:118px;grid-template-columns:84px minmax(0,1fr) var(--side);min-height:138px}
.devt .pd-stubs.is-compact .pd-stub-body{gap:14px;padding:14px 16px}
.devt .pd-stubs.is-compact .pd-stub-date{min-width:44px;padding-right:14px}
.devt .pd-stubs.is-compact .pd-stub-date b{font-size:46px}
.devt .pd-stubs.is-compact .pd-stub-title{font-size:21px}
.devt .pd-stubs.is-compact :is(.pd-stub-types,.pd-stub-acts .woocommerce-button){display:none}
.devt .pd-stubs.is-compact .pd-stub-side{padding:14px 10px}
.devt .pd-stubs.is-compact .pd-stub-code{height:34px}
.devt .pd-stubs.is-compact .pd-stub-stamp{padding:5px 6px 4px;font-size:12px;letter-spacing:.06em;border-width:2px}

/* ---------- My Credit History: a printed receipt (zigzag paper, mono type, myCred's own rows restyled) beside a top-up card ---------- */
.devt .pd-receipt-wrap{display:grid;grid-template-columns:minmax(0,470px) minmax(0,1fr);align-items:start;gap:32px}
.devt .pd-receipt{position:relative;isolation:isolate;padding:38px 30px 34px;color:#24202B;font:500 13px/1.5 var(--mono);rotate:-.5deg;filter:drop-shadow(0 26px 26px rgba(42,21,64,.16)) drop-shadow(0 2px 2px rgba(42,21,64,.08));animation:pd-print 1s var(--settle) .1s backwards}
.devt .pd-receipt::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,#FFFEF9,#FBF8EF);
	-webkit-mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/18px 51% repeat-x,conic-gradient(from 135deg at top,#0000,#000 1deg 89deg,#0000 90deg) top/18px 51% repeat-x;
	mask:conic-gradient(from -45deg at bottom,#0000,#000 1deg 89deg,#0000 90deg) bottom/18px 51% repeat-x,conic-gradient(from 135deg at top,#0000,#000 1deg 89deg,#0000 90deg) top/18px 51% repeat-x} /* torn-off paper, both ends */
@keyframes pd-print{from{clip-path:inset(0 0 100% 0);transform:translateY(-28px)}to{clip-path:inset(0 0 0 0);transform:none}} /* it feeds out of the printer */
.devt .pd-receipt p{margin:0}
.devt .pd-receipt-head{display:grid;justify-items:center;gap:3px;margin-bottom:14px;padding-bottom:16px;border-bottom:1.5px dashed rgba(36,32,43,.35);text-align:center}
.devt .pd-receipt-head p{color:#6B6475;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.devt .pd-receipt-mark{width:34px;height:38px;margin-bottom:8px;background:#24202B;-webkit-mask:url(brand/danbuzz-mark-white.png) center/contain no-repeat;mask:url(brand/danbuzz-mark-white.png) center/contain no-repeat}
.devt .pd-receipt .pd-receipt-brand{color:#121016;font:800 27px/1 var(--display);font-stretch:70%;letter-spacing:.05em}
.devt .pd-receipt-total{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 0 6px!important;padding:6px 0 14px;border-bottom:3px double rgba(36,32,43,.45)}
.devt .pd-receipt-total span{font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.devt .pd-receipt-total b{display:inline-flex;align-items:center;gap:6px;color:#121016;font:800 46px/1 var(--display);font-stretch:70%;font-variant-numeric:tabular-nums}
.devt .pd-receipt-total .devt-i{width:24px;height:24px;color:#E0A800}
/* myCred's table, as receipt lines: date, what it was for, the amount on the right */
.devt .pd-receipt :is(.row,.col-xs-12,.table-responsive,form){margin:0;padding:0;border:0;overflow:visible}
.devt .pd-receipt table{width:100%;margin:0;border:0;border-collapse:collapse;background:none}
.devt .pd-receipt :is(table,tbody,tr,td){display:block}
.devt .pd-receipt :is(thead,.pagination-top){display:none}
.devt .pd-receipt tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 16px;padding:11px 0;border:0;border-bottom:1px dashed rgba(36,32,43,.22);background:none!important}
.devt .pd-receipt td{padding:0;border:0;background:none!important;color:inherit;font:inherit}
.devt .pd-receipt td.column-time{grid-column:1;color:#6B6475;font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.devt .pd-receipt td.column-entry{grid-column:1;grid-row:2;color:#24202B;font-size:13.5px;line-height:1.4}
.devt .pd-receipt td.column-creds{grid-column:2;grid-row:1/3;align-self:center;color:#24202B;font:700 18px/1 var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.devt .pd-receipt td.column-creds[data-raw]:not([data-raw^="-"]){color:#15803D}
.devt .pd-receipt td.column-creds[data-raw]:not([data-raw^="-"])::before{content:"+"} /* myCred prints no plus on what came in; data-raw is its raw number */
.devt .pd-receipt td.column-creds[data-raw^="-"]{color:var(--accent)}
.devt .pd-receipt td.no-entries{grid-column:1/-1;padding:20px 0;color:#6B6475;text-align:center}
.devt .pd-receipt .pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin:16px 0 0;padding:0;list-style:none}
.devt .pd-receipt .pagination li{margin:0;padding:0}
.devt .pd-receipt .pagination :is(a,span){display:inline-grid;place-items:center;min-width:34px;height:34px;padding:0 8px;border:1px solid rgba(36,32,43,.25);border-radius:8px;color:#24202B;font:600 13px/1 var(--mono);text-decoration:none}
.devt .pd-receipt .pagination a:hover{border-color:var(--accent);color:var(--accent)}
.devt .pd-receipt .pagination .active span{border-color:#24202B;background:#24202B;color:#FFFEF7}
.devt .pd-receipt .pagination .tablenav-pages-navspan{opacity:.35}
.devt .pd-receipt-foot{display:grid;justify-items:center;gap:12px;margin-top:20px;padding-top:18px;border-top:1.5px dashed rgba(36,32,43,.35);text-align:center}
.devt .pd-receipt-foot p{color:#6B6475;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.devt .pd-receipt-code{width:80%;height:46px;background:repeating-linear-gradient(90deg,#24202B 0 2px,#0000 2px 5px,#24202B 5px 6px,#0000 6px 8px,#24202B 8px 11px,#0000 11px 13px,#24202B 13px 14px,#0000 14px 18px)}
.devt .pd-receipt .pd-receipt-thanks{color:var(--accent);font:400 24px/1 var(--script);letter-spacing:0;text-transform:none}
.devt .pd-receipt-aside{position:sticky;top:110px;gap:12px;padding:26px}
.devt .pd-receipt-aside .pd-receipt-aside-h{margin:0;font:800 34px/.92 var(--display);font-stretch:68%;text-transform:uppercase}
.devt .pd-receipt-aside .pd-btn{justify-self:start;margin-top:6px}

/* ---------- Account details: your backstage pass on a lanyard, swaying a little, beside the form ---------- */
@property --foil{syntax:"<angle>";inherits:false;initial-value:0deg}
.devt .pd-pass-wrap{display:grid;grid-template-columns:292px minmax(0,1fr);align-items:start;gap:40px}
.devt .pd-pass{position:sticky;top:110px;margin:0;padding-top:70px}
.devt .pd-pass-strap{position:absolute;z-index:2;top:-24px;left:50%;width:30px;height:106px;translate:-50% 0;border-radius:3px;background:repeating-linear-gradient(135deg,#8224E3 0 9px,#6C1BC4 9px 18px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
.devt .pd-pass-strap::after{content:"";position:absolute;left:50%;bottom:-16px;width:24px;height:26px;translate:-50% 0;border:3px solid #BDB7CC;border-radius:6px 6px 11px 11px;background:linear-gradient(180deg,#F4F2F9,#A7A2B7)} /* the clip */
.devt .pd-pass-card{position:relative;isolation:isolate;display:grid;justify-items:start;gap:14px;padding:22px 22px 18px;overflow:hidden;border-radius:26px;color:#fff;
	background:radial-gradient(110% 70% at 0 0,rgba(139,61,255,.6),transparent 60%),radial-gradient(90% 60% at 100% 100%,rgba(255,114,210,.38),transparent 60%),#150A24;
	box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 44px 70px -30px rgba(42,21,64,.8);transform-origin:50% -80px;animation:pd-sway 7s ease-in-out infinite}
.devt .pd-pass-card::before{content:"";position:absolute;z-index:-1;inset:-40%;background:conic-gradient(from var(--foil),#7DEBFF00,#9A83FF55,#FFA35E3a,#FF72D255,#86F3FF4a,#7DEBFF00);mix-blend-mode:screen;animation:pd-foil 9s linear infinite} /* holographic foil */
.devt .pd-pass-card::after{content:"";position:absolute;z-index:-1;inset:0;background:var(--grain);opacity:.16;mix-blend-mode:overlay}
@keyframes pd-sway{0%,100%{transform:rotate(-2.5deg)}50%{transform:rotate(1.8deg)}}
@keyframes pd-foil{to{--foil:360deg}}
.devt .pd-pass-card p{margin:0}
.devt .pd-pass-top{position:relative;display:flex;justify-content:space-between;width:100%;padding-bottom:14px;border-bottom:1px dashed rgba(255,255,255,.22);color:#E9B8FF;font:600 10px/1 var(--mono);letter-spacing:.22em;text-transform:uppercase}
.devt .pd-pass-top::before{content:"";position:absolute;top:-4px;left:50%;width:56px;height:11px;translate:-50% 0;border-radius:999px;background:#07030D;box-shadow:inset 0 2px 3px rgba(0,0,0,.9),0 1px 0 rgba(255,255,255,.14)} /* the slot the clip goes through */
.devt .pd-pass-face{display:grid;place-items:center;width:104px;height:104px;margin-top:4px;border-radius:32px;background:linear-gradient(150deg,#B77CFF,#7A1FE0 55%,#4A0FA8);box-shadow:inset 0 1px 0 rgba(255,255,255,.45),inset 0 -10px 20px rgba(26,8,52,.35),0 18px 30px -14px rgba(0,0,0,.75);font:800 66px/1 var(--display);font-stretch:70%;text-shadow:0 2px 0 rgba(26,8,52,.35)}
.devt .pd-pass-card .pd-pass-name{font:800 40px/.9 var(--display);font-stretch:64%;text-transform:uppercase;overflow-wrap:anywhere}
.devt .pd-pass-card .pd-pass-handle{margin-top:-6px;color:#E9B8FF;font:500 13px/1.3 var(--mono);overflow-wrap:anywhere}
.devt .pd-pass-facts{display:grid;gap:10px;width:100%;margin:4px 0 0;padding:14px 0 0;border-top:1px dashed rgba(255,255,255,.22)}
.devt .pd-pass-facts div{display:grid;gap:2px}
.devt .pd-pass-facts dt{color:rgba(233,184,255,.72);font:600 10px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase}
.devt .pd-pass-facts dd{margin:0;color:#fff;font:500 14px/1.35 var(--sans);overflow-wrap:anywhere}
.devt .pd-pass-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-top:6px!important;color:rgba(255,255,255,.6);font:600 11px/1 var(--mono);letter-spacing:.12em}
.devt .pd-pass-code{flex:1;height:30px;background:repeating-linear-gradient(90deg,#fff 0 2px,#0000 2px 4px,#fff 4px 5px,#0000 5px 8px,#fff 8px 10px,#0000 10px 11px);opacity:.85}
/* the form beside it */
.devt .pd-pass-form{display:grid;gap:18px;margin:0}
.devt .pd-pass-form fieldset{margin:0!important;padding:24px;border:1px solid rgba(81,42,116,.12);border-radius:22px;background:#fff}
.devt .pd-pass-set{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.devt .pd-pass-form legend{float:left;grid-column:1/-1;width:100%;margin:0 0 4px;padding:0;color:var(--ink);font:800 26px/1 var(--display);font-stretch:70%;letter-spacing:0;text-transform:uppercase} /* floated, so it sits in the grid */
.devt .pd-pass-set .form-row{grid-column:1/-1;width:auto!important;margin:0!important;padding:0;float:none!important}
.devt .pd-pass-set :is(.form-row-first,.form-row-last){grid-column:auto}
.devt .pd-pass-set>.pd-pass-hint{grid-column:1/-1;margin:-8px 0 0}
.devt .pd-pass-hint{display:block;margin-top:7px;color:var(--ink-3);font:400 13px/1.4 var(--sans)}
.devt .pd-pass-form label{display:block;margin:0 0 7px;color:var(--ink);font:600 13px/1.25 var(--sans)}
.devt .pd-pass-form label .required{border:0;color:var(--accent);text-decoration:none}
.devt .pd-pass-form input.input-text{box-sizing:border-box;width:100%;height:50px;margin:0;padding:0 16px;border:1.5px solid rgba(81,42,116,.18);border-radius:14px;background:#FBF9FE;box-shadow:none;color:var(--ink);font:500 16px var(--sans);transition:border-color .2s var(--ease),background-color .2s var(--ease),box-shadow .2s var(--ease)}
.devt .pd-pass-form input.input-text:hover{border-color:rgba(81,42,116,.36)}
.devt .pd-pass-form input.input-text:focus{border-color:var(--accent);background:#fff;outline:0;box-shadow:0 0 0 4px rgba(130,36,227,.14)}
.devt .pd-pass-form .password-input{position:relative;display:block}
.devt .pd-pass-form .password-input input{padding-inline-end:54px!important} /* WoodMart forces 42px with !important */
.devt .pd-pass-form .show-password-input{position:absolute;top:50%;right:6px;width:42px;height:42px;min-height:0;margin:-21px 0 0;padding:0;border:0;border-radius:10px;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23121016' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/20px no-repeat;box-shadow:none;font-size:0;opacity:.55;cursor:pointer}
.devt .pd-pass-form .show-password-input.display-password{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23121016' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3l18 18M10.6 5.1Q11.3 5 12 5c6.4 0 10 7 10 7a17.6 17.6 0 0 1-3.2 4.1M6.6 6.6C3.9 8.4 2 12 2 12s3.6 7 10 7a9.8 9.8 0 0 0 5.4-1.6M9.9 9.9a3 3 0 0 0 4.2 4.2'/%3E%3C/svg%3E")}
.devt .pd-pass-form .show-password-input:hover{opacity:1}
.devt .pd-pass-form .show-password-input::before,.devt .pd-pass-form .show-password-input::after{display:none}
.devt .pd-pass-form>fieldset:not(.pd-pass-set) legend{margin-bottom:14px}
.devt .pd-pass-form>fieldset:not(.pd-pass-set) label{display:flex!important;clear:both;align-items:flex-start;gap:12px;margin:0;font:500 15px/1.4 var(--sans)} /* "New events" (tickets.php): under its floated heading, not squeezed beside it */
.devt .pd-pass-form input[type=checkbox]{width:20px;height:20px;margin:0;accent-color:var(--accent)}
.devt .pd-pass-save{display:flex;justify-content:flex-end;margin:0}
.devt .pd-acc-content .pd-pass-save .button{min-height:52px;padding:0 32px;font-size:15px}

/* Studio Classes: Amelia's own panel, on a white sheet, in Danbuzz purple where it lets us */
.devt .pd-acc-amelia{padding:4px 0;--am-c-primary:#8224E3;--am-font-family:var(--sans)}
.devt .pd-acc-amelia [class*="amelia"]{--am-c-primary:#8224E3!important;--am-font-family:var(--sans)!important} /* Amelia writes its colours inline */

/* A booking's details (view-order): WooCommerce's markup, in cards */
.devt .pd-acc-content>p:has(mark){margin:0 0 18px;color:var(--ink-2);font:400 15px/1.6 var(--sans)}
.devt .pd-acc-content mark{padding:3px 9px;border-radius:999px;background:#F2EEF7;color:var(--ink);font-weight:600}
.devt .pd-acc-content :is(.woocommerce-order-details,.woocommerce-customer-details,.woocommerce-order-downloads){margin:0 0 18px;padding:18px;border:1px solid rgba(81,42,116,.12);border-radius:20px;background:#fff}
.devt .pd-acc-content :is(.woocommerce-order-details__title,.woocommerce-column__title){margin:0 0 10px;font:800 22px/1 var(--display);font-stretch:70%;text-transform:uppercase}
.devt .pd-acc-content .woocommerce-customer-details address{padding:0;border:0;color:var(--ink-2);font-style:normal;line-height:1.6}
@media (max-width:1199px){
	.devt .pd-receipt-wrap,.devt .pd-pass-wrap{grid-template-columns:minmax(0,1fr)}
	.devt .pd-receipt{width:min(100%,470px);margin-inline:auto}
	.devt .pd-receipt-aside{position:static;order:-1}
	.devt .pd-pass{position:relative;top:auto;width:min(100%,300px);margin-inline:auto} /* relative, not sticky: the strap hangs from it */
}
@media (max-width:959px){
	.devt .pd-acc{grid-template-columns:minmax(0,1fr);gap:16px}
	.devt .pd-acc-nav{position:static;padding:6px;overflow-x:auto;contain:inline-size;scrollbar-width:none} /* a scrolling row that never widens the page */
	.devt .pd-acc-nav ul{display:flex;gap:6px;width:max-content}
	.devt .pd-acc-nav a{min-height:42px;white-space:nowrap}
	.devt .pd-acc-dash{grid-template-columns:minmax(0,1fr)}
	.devt .pd-acc-tickets{grid-row:auto}
}
@media (max-width:600px){
	.devt .pd-acc-content{padding:14px;border-radius:22px}
	.devt .pd-acc-card{padding:18px}
	.devt .pd-acc-tickets{padding:16px 14px}
	.devt .pd-acc-balance{font-size:48px}
	.devt .pd-acc-head .devt-bz-say{display:none} /* no room beside the greeting */
	.devt .pd-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;border-radius:20px}
	.devt .pd-tabs button{flex-direction:column;justify-content:center;gap:5px;min-height:58px;padding:6px 4px;border-radius:15px;font-size:14px} /* three equal tabs, the count under the name */
	.devt .pd-tabs button span{min-width:22px;padding:3px 6px;font-size:11px}
	/* the stub on a phone, compact (user request 2026-09-29): a small poster beside the date and the place, the title and the rest
	   full width under them, the tear line across and the stub along the bottom. The body's pieces join the card's own grid. */
	.devt .pd-stub-card,.devt .pd-stubs.is-compact .pd-stub-card{--tear:50px;grid-template-columns:56px minmax(0,1fr);grid-template-areas:"pic date" "pic meta" "title title" "types types" "note note" "acts acts" "side side";align-content:start;column-gap:12px;min-height:0;padding:14px 14px 0;
		-webkit-mask:radial-gradient(circle var(--notch) at 0 calc(100% - var(--tear)),#0000 97%,#000),radial-gradient(circle var(--notch) at 100% calc(100% - var(--tear)),#0000 97%,#000),var(--punch,linear-gradient(#000,#000));
		mask:radial-gradient(circle var(--notch) at 0 calc(100% - var(--tear)),#0000 97%,#000),radial-gradient(circle var(--notch) at 100% calc(100% - var(--tear)),#0000 97%,#000),var(--punch,linear-gradient(#000,#000));-webkit-mask-composite:source-in;mask-composite:intersect} /* the shorthand resets the compositing */
	.devt .pd-stub.is-completed .pd-stub-card{--punch:linear-gradient(#000,#000)} /* no free spot for the gate punch on a phone */
	.devt :is(.pd-stub-body,.pd-stub-info),.devt .pd-stubs.is-compact .pd-stub-body{display:contents}
	.devt .pd-stub-pic{grid-area:pic;align-self:start;width:56px;height:70px;border-radius:10px}
	.devt .pd-stub-date,.devt .pd-stubs.is-compact .pd-stub-date{grid-area:date;display:flex;align-items:baseline;gap:6px;min-width:0;padding:0;border:0;text-align:left}
	.devt .pd-stub-date b,.devt .pd-stubs.is-compact .pd-stub-date b{font-size:34px}
	.devt .pd-stub-date span{margin:0;font-size:11px}
	.devt .pd-stub-date br{display:none}
	.devt .pd-stub-meta{grid-area:meta;align-self:start;font-size:11px}
	.devt .pd-stub .pd-stub-title,.devt .pd-stubs.is-compact .pd-stub-title{grid-area:title;margin-top:12px;font-size:20px}
	.devt .pd-stub-types{grid-area:types;margin-top:4px!important;font-size:13px}
	.devt .pd-stub-note{grid-area:note;margin-top:4px!important;font-size:12px}
	.devt .pd-stub-acts{grid-area:acts;margin:12px 0 14px}
	.devt .pd-stub-acts .pd-btn{flex:1 1 auto;min-height:40px}
	.devt .pd-stub-side,.devt .pd-stubs.is-compact .pd-stub-side{grid-area:side;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;height:var(--tear);margin:0 -14px;padding:0 14px;border:0;border-top:2px dashed rgba(18,16,22,.2)}
	.devt .pd-stub-code,.devt .pd-stubs.is-compact .pd-stub-code{height:24px}
	.devt .pd-stub-stamp,.devt .pd-stubs.is-compact .pd-stub-stamp{padding:5px 8px 4px;border-width:2px;font-size:13px}
	.devt .pd-receipt{padding:32px 20px 30px;rotate:none}
	.devt .pd-pass-set{grid-template-columns:minmax(0,1fr)}
	.devt .pd-pass-set :is(.form-row-first,.form-row-last){grid-column:1/-1}
	.devt .pd-pass-form fieldset{padding:18px}
	.devt .pd-pass-save .button{width:100%}
}

/* ---------- My Account (WoodMart's page), partners only: the way back to the dashboard ---------- */
.pd-switch-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin:0 0 24px;padding:16px 20px;border:1px solid #E1D3F7;border-radius:18px;background:#F6F0FE;color:#1C1030}
.pd-switch-card p{margin:0;font-size:15px;line-height:1.5}
.pd-switch-go{display:inline-flex;align-items:center;height:42px;padding:0 20px;border-radius:999px;background:#8224E3;color:#fff!important;font-weight:600;text-decoration:none!important;white-space:nowrap}
.pd-switch-go:hover{background:#6C1BC4}

/* Touch screens (user report 2026-10-01: My Credit History glitched while scrolling). Phones redraw blur behind glass and
   drop-shadow filters on every scroll frame; the tall receipt was the worst. Solid cards and no filters on touch. */
@media (hover:none){
	.devt :is(.pd-receipt,.pd-stub){filter:none}
	.devt :is(.pd-card,.pd-acc-nav){-webkit-backdrop-filter:none;backdrop-filter:none;background:#F7F4FC}
	.devt .pd-switch{-webkit-backdrop-filter:none;backdrop-filter:none} /* not the light card colour: its labels are white (2026-10-09) */
}

/* "Continue with Google": its button and "or" line are in assets/google.css (login and checkout share them). */
/* The account photo (google-login.php) on the pass, over the initial; its field on Account details. */
.devt .pd-pass-face{position:relative;overflow:hidden}
.devt .pd-pass-face img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.devt .pd-pass-face img[hidden]{display:none}
.devt .pd-photo-row input[type=file]{box-sizing:border-box;width:100%;padding:7px;border:1.5px dashed rgba(81,42,116,.24);border-radius:14px;background:#FBF9FE;color:var(--ink-2);font:500 14px var(--sans);cursor:pointer}
.devt .pd-photo-row input[type=file]::file-selector-button{margin-right:12px;padding:10px 16px;border:0;border-radius:10px;background:var(--accent);color:#fff;font:600 14px var(--sans);cursor:pointer}
.devt .pd-photo-row input[type=file]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.devt .pd-pass-form label.pd-photo-off{display:flex;align-items:center;gap:10px;margin:10px 0 0;font:500 14px/1.3 var(--sans)}
/* Seats per artist (artist-picks.php) */
body .pd-seats-type{margin:0 0 6px;font-weight:600}
body .pd-seats-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px 20px;margin:0 0 16px;padding:0;list-style:none}
body .pd-seats-list li{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid rgba(30,16,48,.12)}
body .pd-seats-list b{font-variant-numeric:tabular-nums}
body .pd-seats-list .is-full b{color:#B42318}

/* Phones zoom into a field under 16px (2026-10-15): on touch screens the dashboard search and small forms read 16px. */
@media (hover:none){
	.devt .pd-search input,.devt .pd-form input{font-size:16px}
}
