*{box-sizing:border-box}:root{--black:#070707;--card:#151516;--card2:#1e1e21;--line:rgba(255,255,255,.1);--line2:rgba(255,255,255,.18);--txt:rgba(255,255,255,.72);--muted:rgba(255,255,255,.42);--violet:#7B2FE8;--pink:#E8186A;--gold:#D4A017;--green:#1A8C35;--red:#E03131}body{margin:0;background:#0c0c0d;color:white;font-family:Inter,system-ui,sans-serif}a{color:inherit;text-decoration:none}button,.btn{background:linear-gradient(135deg,var(--violet),var(--pink));color:white;border:0;border-radius:12px;padding:10px 15px;text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:900;cursor:pointer;display:inline-block}.danger{background:rgba(224,49,49,.2)!important;color:#ff7777!important;border:1px solid rgba(224,49,49,.45)!important}.admin-shell{display:grid;grid-template-columns:248px 1fr;min-height:100svh}.sidebar{background:#050505;border-right:1px solid var(--line);padding:18px;position:sticky;top:0;height:100svh;overflow:auto}.admin-brand{display:flex;align-items:center;gap:10px;margin-bottom:6px}.admin-brand span,.admin-logo{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--violet),var(--pink));display:grid;place-items:center;font-family:'Bebas Neue';font-size:22px}.admin-brand b{letter-spacing:.12em}.sidebar small{display:block;color:var(--muted);margin-bottom:18px;text-transform:uppercase;letter-spacing:.16em;font-weight:900;font-size:10px}.side-link{display:block;color:var(--muted);padding:10px 12px;border-radius:12px;margin-bottom:3px;font-size:13px;font-weight:700}.side-link:hover,.side-link.active{background:rgba(123,47,232,.18);color:white}.side-bottom{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.side-bottom a{display:block;color:var(--muted);font-size:13px;margin-bottom:10px}.admin-main{min-width:0}.topbar{height:70px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:#0a0a0b;position:sticky;top:0;z-index:5}.topbar h1{font-family:'Bebas Neue';font-size:38px;margin:0}.topbar div{font-size:12px;color:var(--muted)}.admin-content{padding:28px}.notice{background:rgba(26,140,53,.18);border:1px solid rgba(26,140,53,.5);border-radius:14px;padding:13px 16px;margin:18px 28px 0}.notice.err{background:rgba(224,49,49,.18);border-color:rgba(224,49,49,.45)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat,.panel{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px}.stat strong{font-family:'Bebas Neue';font-size:52px;display:block}.stat span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.13em;font-weight:900}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel h2{font-family:'Bebas Neue';font-size:32px;margin:0 0 16px}table{width:100%;border-collapse:collapse}th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:10px}th,td{border-bottom:1px solid var(--line);padding:12px;vertical-align:top}td small{display:block;color:var(--muted);margin-top:4px}.badge{display:inline-block;border-radius:999px;padding:5px 9px;background:rgba(255,255,255,.08);color:var(--txt);font-size:10px;text-transform:uppercase;font-weight:900}.badge.pending,.badge.preorder,.badge.new{background:rgba(212,160,23,.16);color:#ffd46b}.badge.confirmed,.badge.active,.badge.published,.badge.in_stock,.badge.printful_draft{background:rgba(26,140,53,.18);color:#61e28b}.badge.cancelled,.badge.hidden,.badge.out_of_stock{background:rgba(224,49,49,.18);color:#ff7777}.actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.hint{color:var(--muted);font-size:12px}.row-actions{display:flex;gap:6px;flex-wrap:wrap}.row-actions a,.row-actions button{background:rgba(255,255,255,.07);border:1px solid var(--line);color:white;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .full{grid-column:1/-1}.field span{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;margin-bottom:7px}input,select,textarea{width:100%;background:#101011;border:1px solid var(--line2);color:white;border-radius:12px;padding:12px;font:inherit}textarea{min-height:120px;resize:vertical}input[type=file]{padding:10px;background:#19191b}.thumb{max-width:140px;border-radius:12px;margin-top:8px;border:1px solid var(--line)}.login-body{min-height:100svh;display:grid;place-items:center;background:radial-gradient(circle at 70% 20%,rgba(123,47,232,.3),transparent 30%),#070707}.login-card{width:min(430px,calc(100% - 32px));background:var(--card);border:1px solid var(--line);border-radius:24px;padding:30px}.login-card h1{font-family:'Bebas Neue';font-size:48px;margin:10px 0 0}.login-card p{color:var(--muted)}.login-card input{margin-bottom:12px}.login-card button{width:100%;margin-top:4px}.login-card a{display:block;color:var(--muted);margin-top:18px;text-align:center}@media(max-width:900px){.admin-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.topbar{position:relative}.stat-grid,.two-col,.form-grid{grid-template-columns:1fr}.admin-content{padding:18px}table{display:block;overflow:auto}}

.badge.pass{background:rgba(26,140,53,.16);color:#1a8c35;border:1px solid rgba(26,140,53,.35)}.badge.fix{background:rgba(224,49,49,.14);color:#e03131;border:1px solid rgba(224,49,49,.35)}ol{color:rgba(255,255,255,.7);line-height:1.8}.hint{color:rgba(255,255,255,.45);font-size:12px;margin-left:12px}

/* Media library upgrade */
.thumb.video{display:block;width:220px;max-width:100%;height:120px;object-fit:cover;background:#050505;border:1px solid rgba(255,255,255,.14);margin-top:8px}
code{background:rgba(255,255,255,.07);padding:2px 5px;border-radius:4px;color:#fff;word-break:break-all}.hint{color:rgba(255,255,255,.55);font-size:13px;line-height:1.6}.admin-brand b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px;display:inline-block;vertical-align:middle}.field small{display:block;color:rgba(255,255,255,.45);margin-top:6px;line-height:1.45}

/* Drag/drop media uploader */
.dropzone{border:2px dashed rgba(255,255,255,.22);background:rgba(255,255,255,.035);border-radius:22px;min-height:210px;display:grid;place-items:center;text-align:center;cursor:pointer;padding:26px;transition:.18s ease;position:relative;overflow:hidden}.dropzone input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.dropzone strong{font-family:'Bebas Neue';font-size:34px;display:block}.dropzone span{display:block;color:rgba(255,255,255,.55);margin-top:6px}.dropzone small{display:block;color:rgba(255,255,255,.34);margin-top:10px}.dropzone.dragging{border-color:var(--violet);background:rgba(123,47,232,.16);transform:scale(1.01)}.dropzone.compact{min-height:150px}.media-upload-builder .form-grid{margin-bottom:16px}.upload-results{display:grid;gap:10px;margin-top:16px}.upload-result{display:grid;grid-template-columns:1.3fr 1fr 1.8fr auto;gap:10px;align-items:center;background:#101011;border:1px solid var(--line);border-radius:14px;padding:12px}.upload-result span{color:rgba(255,255,255,.55);font-size:12px}.upload-result span.bad{color:#ff7777}.upload-result button{background:rgba(255,255,255,.07);border:1px solid var(--line);border-radius:10px;padding:8px 10px;color:white;font-size:10px;text-transform:uppercase;font-weight:900}

/* Posh-inspired event builder */
.event-create-shell{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px}.event-create-main{display:grid;gap:18px}.builder-card{background:var(--card);border:1px solid var(--line);border-radius:24px;padding:22px}.builder-card h2{font-family:'Bebas Neue';font-size:34px;margin:0 0 14px}.hero-uploader{background:linear-gradient(180deg,rgba(123,47,232,.12),rgba(255,255,255,.025));border-color:rgba(123,47,232,.28)}.builder-preview{width:100%;max-height:420px;object-fit:cover;border-radius:18px;margin-top:14px;border:1px solid var(--line)}.event-create-side .sticky{position:sticky;top:90px}.btn.ghost{background:rgba(255,255,255,.07);border:1px solid var(--line);margin-top:10px;text-align:center}.btn.full{width:100%;text-align:center}.event-builder .field{display:block}.event-builder .field+.field{margin-top:12px}

/* Ticket scanner */
.scanner-page{min-height:100svh;background:#080808;color:white;font-family:Inter,system-ui,sans-serif;padding:22px}.scanner-card{max-width:820px;margin:0 auto;background:#151516;border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:22px}.scanner-card h1{font-family:'Bebas Neue';font-size:58px;margin:0 0 8px}.scanner-video-wrap{background:#000;border-radius:20px;overflow:hidden;border:1px solid rgba(255,255,255,.12);aspect-ratio:16/10;display:grid;place-items:center}.scanner-video-wrap video{width:100%;height:100%;object-fit:cover}.scanner-actions{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:14px}.scanner-status{color:rgba(255,255,255,.6);margin-top:12px}.scanner-help{color:rgba(255,255,255,.45);line-height:1.6}.ticket-qr img{background:white;border-radius:14px;padding:10px;max-width:260px;width:100%;height:auto}
@media(max-width:980px){.event-create-shell{grid-template-columns:1fr}.event-create-side .sticky{position:relative;top:auto}.upload-result{grid-template-columns:1fr}.scanner-actions{grid-template-columns:1fr}}

/* Media Library path visibility fix */
.media-library-list table{min-width:980px}.media-list-thumb{width:92px;height:58px;object-fit:cover;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:#050505}.media-file-icon{width:92px;height:58px;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);display:grid;place-items:center;font-size:11px;font-weight:900;color:rgba(255,255,255,.65)}.copy-code{display:block;max-width:460px;white-space:normal;line-height:1.45;margin-bottom:8px}.copy-btn{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#fff;border-radius:10px;padding:8px 10px;text-transform:uppercase;font-size:10px;font-weight:900;cursor:pointer}.copy-btn:hover{background:rgba(177,47,232,.18);border-color:rgba(177,47,232,.38)}
