.portal-header{height:85px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.portal-header>a:first-child{font-size:35px;font-weight:800;letter-spacing:-2px}.portal-header>a:first-child span{font-size:22px;font-weight:400}.portal-header>a:last-child{font-size:12px}.admin-page,.ticket-page{max-width:1280px;margin:auto;padding:50px 5% 80px}.admin-page h1,.ticket-page h1{font-family:'DM Sans',Arial,sans-serif;font-size:45px;letter-spacing:-2px;line-height:1.1;margin:15px 0 30px}.admin-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.status-pill{background:#e5e8d9;color:#4e5c29;padding:9px 13px;border-radius:20px;font-size:9px;font-weight:700;letter-spacing:.6px}.status-pill.ready{background:var(--lime)}.admin-tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);margin:10px 0 30px;overflow:auto}.admin-tabs button{border:0;background:none;white-space:nowrap;padding:15px 20px;font-size:12px}.admin-tabs button.selected{border-bottom:3px solid var(--ink);font-weight:700}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:25px}.metrics>div{background:#fff;border:1px solid var(--line);border-radius:8px;padding:23px}.metrics span{font-size:12px;color:var(--muted)}.metrics strong{display:block;font-size:31px;margin-top:15px}.metrics small{font-size:11px;font-weight:400;color:var(--muted)}.admin-columns{display:grid;grid-template-columns:1fr 1fr;gap:25px}.panel,.setup-panel{padding:32px;border:1px solid var(--line);background:#fff;border-radius:8px}.panel h2,.setup-panel h2{font-size:28px;letter-spacing:-1px;margin:13px 0 18px}.panel p,.setup-panel>p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:20px}.event-facts{display:flex;gap:15px;flex-wrap:wrap;margin:28px 0;font-size:12px;font-weight:600}.event-facts span{background:var(--paper);padding:13px}.field{display:flex;flex-direction:column;gap:9px;font-size:12px;font-weight:600;margin:20px 0}.field input,.field select{padding:13px;border:1px solid #bcc2ae;border-radius:5px;background:var(--paper);max-width:100%;color:var(--ink)}.notice{padding:18px 22px;background:#e9eddc;border:1px solid #d3ddba;font-size:13px;line-height:1.8;border-radius:6px;margin:20px 0}.notice.error{background:#fff0ed;color:#8c2c20;border-color:#eecac3}.notice p{margin:12px 0}.notice a{text-decoration:underline}.notice h2{font-size:24px;margin:10px 0}.notice .button{margin-top:15px}.setup-step{display:flex;align-items:flex-start;gap:18px;padding:25px 0;border-bottom:1px solid var(--line)}.setup-step>span{font-size:22px;flex-shrink:0}.check-done{color:#60830b}.check-wait{color:#929b83}.setup-step>div{flex:1}.setup-step h3{font-size:15px;margin:0 0 10px}.setup-step p{font-size:13px;line-height:1.8;color:var(--muted);max-width:650px}.setup-step a{display:inline-block;font-size:12px;text-decoration:underline;margin-top:12px}.setup-step small{font-size:10px;color:var(--muted);white-space:nowrap}.button:disabled{opacity:.55;transform:none}.table-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.table-heading button{font-size:11px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}th{font-size:10px;text-transform:uppercase;letter-spacing:.5px;padding:15px 12px;background:var(--paper);white-space:nowrap}td{padding:18px 12px;border-bottom:1px solid var(--line);font-size:11px}td small{display:block;font-size:8px;letter-spacing:.5px;margin-top:7px}.small-note{font-size:11px!important;color:var(--muted);line-height:1.7;margin-top:20px}.empty-orders{padding:30px;text-align:center}.scanner{max-width:720px}.test-toggle{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.6}.test-toggle input{margin-top:4px}.scanner-video{display:block;width:100%;max-height:360px;object-fit:cover;background:#111;margin:20px 0;border-radius:5px}.scanner-hidden{display:none}.scan-result{border-radius:6px;padding:25px;margin-top:25px}.scan-result h3{font-size:19px;margin-bottom:10px}.scan-result.valid{background:#e1f1c7}.scan-result.invalid{background:#fce6e2;color:#8c2c20}.live-notice{background:#fff0cf}.ticket-summary{display:flex;justify-content:space-between;align-items:center;gap:25px;margin:25px 0}.ticket-summary p{font-size:13px;line-height:1.8;color:var(--muted)}.entry-ticket{display:grid;grid-template-columns:1fr 290px;background:#171f18;color:white;border-radius:10px;overflow:hidden;margin:25px 0;break-inside:avoid}.ticket-left{padding:38px}.ticket-left .eyebrow{color:#bdc6b1}.ticket-left h2{font-family:'Barlow Condensed',Impact,sans-serif;font-size:65px;line-height:.9;letter-spacing:-1px;margin:25px 0}.ticket-left h2 span{color:var(--lime)}.ticket-left p:not(.eyebrow){font-size:13px;line-height:1.8;color:#e2e8da}.ticket-left .ticket-price{font-size:27px!important;font-weight:700;margin-top:20px}.ticket-price small{font-size:9px;letter-spacing:1px;margin-left:10px}.ticket-qr{background:white;color:var(--ink);border-left:2px dashed #bdc5b3;padding:25px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}.ticket-qr svg{width:100%;max-width:230px;height:auto}.ticket-qr span{font-size:11px}.ticket-qr small{font-size:10px;color:var(--muted);line-height:1.7}.test-label{display:inline-block;color:#141b12;background:var(--lime);padding:8px;margin-top:17px;font-size:10px;letter-spacing:.4px}.legal-page{max-width:850px;margin:auto;padding:50px 6%}.legal-page h1{font-size:45px}.legal-page h2{font-size:24px;margin:30px 0 15px}.legal-page p{font-size:14px;line-height:1.9}.consent-check{display:flex;align-items:flex-start;gap:9px;font-size:11px;line-height:1.7;margin:16px 0}.consent-check a{text-decoration:underline}.payment-error{font-size:12px;line-height:1.7;color:#9c3427;margin:14px 0}.admin-home-link{display:none}.admin-home-link.visible{display:inline!important}
@media(max-width:800px){.metrics{grid-template-columns:1fr 1fr}.admin-columns{grid-template-columns:1fr}.admin-heading{display:block}.status-pill{display:inline-block;margin-bottom:15px}.admin-page h1,.ticket-page h1{font-size:36px}.admin-tabs button{padding:15px 10px;font-size:11px}.panel,.setup-panel{padding:23px}.entry-ticket{grid-template-columns:1fr}.ticket-left h2{font-size:58px}.ticket-qr{border-left:0;border-top:2px dashed #bdc5b3}.ticket-summary{flex-direction:column;align-items:flex-start}.setup-step{gap:10px}.setup-step small{display:none}.table-heading{align-items:flex-start}.metrics>div{padding:18px}.metrics strong{font-size:26px}.portal-header{padding:0 5%}.portal-header>a:last-child{font-size:10px}}
@media print{body{background:white}.portal-header,.no-print,.ticket-summary,.ticket-page>h1,.ticket-page>.eyebrow,.notice,.small-note{display:none!important}.ticket-page{padding:0}.entry-ticket{grid-template-columns:1fr 260px;break-inside:avoid;border:2px solid #222;print-color-adjust:exact;-webkit-print-color-adjust:exact}.ticket-left{padding:25px}.ticket-left h2{font-size:54px}.ticket-qr{border-top:0;border-left:2px dashed #999}.entry-ticket:not(:last-of-type){break-after:page}}
.ticket-actions{display:flex;gap:12px;flex-wrap:wrap}.ticket-event-image{width:100%;max-height:230px;object-fit:contain;margin-bottom:20px}.ticket-left h2{font-size:clamp(25px,4vw,46px);line-height:1.1;overflow-wrap:anywhere}.ticket-used{padding:12px;color:#8c2c20;background:#fff0ed;font-size:12px}.entry-ticket{scroll-margin-top:20px}.ticket-left p,.ticket-qr span{overflow-wrap:anywhere}@media(max-width:560px){.ticket-left{padding:24px}.ticket-left h2{font-size:32px}.ticket-actions{width:100%}.ticket-actions button{width:100%;white-space:normal}.ticket-qr{padding:24px}.ticket-event-image{max-height:190px}}@media print{.ticket-left h2{font-size:32px}.ticket-event-image{max-height:180px}.entry-ticket{border-radius:0}.ticket-left{padding:20px}.ticket-qr{padding:18px}.ticket-qr svg{min-width:180px}.ticket-actions{display:none!important}}
.central-admin .admin-filters{display:flex;flex-wrap:wrap;gap:16px;align-items:end;margin:24px 0}.admin-filters label{display:flex;flex-direction:column;gap:8px;font-size:12px;flex:1;min-width:180px}.admin-filters select,.admin-filters input{padding:12px;border:1px solid #bfc7b0;background:#fff;color:#171815;width:100%;min-width:0}.central-admin .table-scroll table{min-width:850px}.central-admin td small{font-size:11px;letter-spacing:0;line-height:1.5}.central-admin .admin-issue{color:#8c2c20}.admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:25px 0}.admin-order-detail{border-top:3px solid #b8df16;margin-top:30px;padding-top:25px}.admin-order-detail p{overflow-wrap:anywhere}.admin-order-detail h4{margin-top:25px}.central-admin .admin-tabs{flex-wrap:wrap}.central-admin .scanner form{margin-top:24px}@media(max-width:560px){.admin-pagination{flex-wrap:wrap}.admin-filters label{min-width:100%}.central-admin .admin-heading .button{margin:20px 0}.central-admin .metrics strong{font-size:24px}}

.single-ticket-actions{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 10px}.single-ticket-feedback{font-size:13px;line-height:1.7;min-height:22px;margin:10px 0 30px}.single-ticket-feedback:empty{display:none}.single-ticket-link{display:grid;gap:8px;font-size:12px;margin:16px 0}.single-ticket-link input{width:100%;min-width:0;padding:12px;border:1px solid #bcc2ae;background:white;color:#171815;font:inherit}.individual-ticket-block{margin-bottom:38px}.ticket-actions{display:flex;flex-wrap:wrap;gap:12px}@media(max-width:600px){.single-ticket-actions{flex-direction:column}.single-ticket-actions .button{width:100%;white-space:normal;justify-content:center}}@media print{.individual-ticket-block{break-inside:avoid;break-after:page;margin:0}.individual-ticket-block:last-of-type{break-after:auto}.entry-ticket{margin:0;break-after:auto!important}.single-ticket-feedback,.single-ticket-actions,.single-ticket-link{display:none!important}}

.ticket-brand-logo{display:block;width:190px;max-width:75%;height:auto;background:transparent;padding:0;margin:0 auto 12px;mix-blend-mode:multiply}.ticket-portal-logo{display:block;width:130px;height:auto;background:transparent;padding:0;mix-blend-mode:multiply}.entry-ticket .ticket-brand-logo{object-fit:contain}@media print{.ticket-brand-logo{width:160px;max-width:60%;padding:0;margin-bottom:14px}}

/* Achat sans compte : sélection puis récapitulatif. */
.purchase-steps{display:flex;gap:12px;list-style:none;padding:0;margin:24px 0;flex-wrap:wrap;font-size:12px;color:var(--muted)}
.purchase-steps li{padding:8px 10px;border-bottom:2px solid var(--line)}
.purchase-steps [aria-current]{color:var(--ink);border-color:#87a410;font-weight:700}
.purchase-review{margin-top:24px}.purchase-review>div{display:flex;justify-content:space-between;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.purchase-review small{display:block;color:var(--muted);font-size:12px;line-height:1.7;margin-top:4px}
.purchase-condition{font-size:13px;line-height:1.7;white-space:pre-line;margin:18px 0}
.purchase-back{display:block;margin:24px auto 10px;min-height:36px}.tariff-state{font-weight:700;color:var(--ink)}
.pending-summary{padding:20px 0;line-height:1.8}.pending-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.pending-actions .button{font-size:14px}
.payment-deadline{font-size:14px;margin:16px 0;line-height:1.7}.pending-summary ul{padding-left:20px}.payment-help{margin-top:22px;font-size:14px;line-height:1.8}
.manual-settlement-panel form{margin:28px 0;padding:24px;border:1px solid var(--line)}.manual-settlement-panel .organizer-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.manual-settlement-panel label:not(.billing-consent){display:grid;gap:8px;font-size:12px}.manual-settlement-panel input:not([type=checkbox]){width:100%;min-width:0;box-sizing:border-box;padding:12px;border:1px solid #bfc7b0;background:#fff;color:#171815;font:inherit}.manual-settlement-panel .billing-consent{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.7;margin:20px 0}.manual-settlement-panel .billing-consent input{margin-top:4px;flex-shrink:0}.manual-settlement-panel h3{margin:24px 0 12px}@media(max-width:650px){.manual-settlement-panel .organizer-fields{grid-template-columns:1fr}.manual-settlement-panel form{padding:16px}.manual-settlement-panel .table-heading{flex-wrap:wrap}}
.ticket-shell{min-height:100svh;background:var(--paper);color:var(--ink);color-scheme:only light}.ticket-logo-definitions{position:absolute;overflow:hidden;pointer-events:none}.ticket-shell .ticket-qr{color-scheme:only light;background:#fff;color:#161813}.ticket-shell .ticket-qr small{color:#5f6758}.ticket-shell .ticket-qr .ticket-brand-logo{filter:none;mix-blend-mode:multiply}.ticket-shell .ticket-qr svg{color:#000;background:#fff}.ticket-shell .button:not(.dark){background:#e6e9df;color:#161813}
@media (prefers-color-scheme: dark){.ticket-shell{--paper:#101610;--ink:#edf2e7;--muted:#b4beaa;--line:#354331;color-scheme:dark}.ticket-shell .portal-header{background:#101610}.ticket-shell .ticket-portal-logo{filter:url(#ticket-logo-dark);mix-blend-mode:normal}.ticket-shell .entry-ticket{background:#1b281c;color:#f5f8f0;border:1px solid #3c4b35;box-shadow:0 10px 30px #0003}.ticket-shell .ticket-left h2{color:#f5f8f0}.ticket-shell .ticket-left p:not(.eyebrow){color:#dfe9d7}.ticket-shell .notice{background:#26361e;color:#e5f1db;border-color:#465c37}.ticket-shell .notice.error{background:#382420;color:#ffd0c3;border-color:#805043}.ticket-shell .button.dark{background:#b8df16;color:#15200c}.ticket-shell .button:not(.dark){background:#2b3926;color:#edf2e7;border:1px solid #4a5c40}.ticket-shell .single-ticket-link input{background:#1b281c;color:#edf2e7;border-color:#4a5c40}.ticket-shell .single-ticket-feedback,.ticket-shell .payment-help{color:#b4beaa}.ticket-shell .ticket-qr{border-color:#98a78b}.ticket-shell .test-label{color:#141b12;background:#b8df16}.ticket-shell .ticket-used{background:#fff0ed;color:#8c2c20}}
@media print{.ticket-shell{--paper:#fff;--ink:#161813;--muted:#686b61;--line:#d9dcd0;min-height:0;background:#fff;color:#161813;color-scheme:only light}.ticket-shell .entry-ticket{background:#171f18;box-shadow:none}.ticket-shell .ticket-qr{background:#fff;color:#161813}.ticket-shell .ticket-logo-definitions{display:none}}

.settlement-state{display:inline-block;padding:7px 11px;border-radius:16px;font-size:11px;font-weight:700;background:#edf0e7;color:#46523a;white-space:nowrap}.settlement-state.due,.settlement-state.partial{background:#fff0ca;color:#694b00}.settlement-state.settled{background:#dff0ce;color:#315315}.settlement-state.review{background:#fce6e2;color:#8c2c20}.settlement-overview .table-heading{align-items:flex-start;flex-wrap:wrap}.settlement-overview .table-heading>div{max-width:700px}.manual-settlement-panel form .button{margin-top:12px}
.settlement-overview .metrics,.manual-settlement-panel .metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}.settlement-overview .metrics>div,.manual-settlement-panel .metrics>div{min-width:0}.settlement-overview .metrics strong,.manual-settlement-panel .metrics strong{font-size:clamp(22px,2.3vw,31px);overflow-wrap:anywhere}

.ticket-recovery{max-width:780px}.ticket-recovery>p{line-height:1.7}.ticket-recovery .recovery-form{margin:30px 0}.ticket-recovery .field{font-size:14px}.ticket-recovery input[type=email]{font-size:16px;padding:16px;min-width:0;width:100%;box-sizing:border-box}.recovery-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.ticket-recovery h1{overflow-wrap:anywhere}.ticket-recovery .payment-help a{overflow-wrap:anywhere}.ticket-recovery .button{max-width:100%}

.cancellation-panel .metrics{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}.cancellation-panel .metrics>div{min-width:0}.cancellation-panel .metrics strong{font-size:clamp(22px,2.3vw,31px);overflow-wrap:anywhere}.cancellation-panel .field textarea{min-height:110px;width:100%;box-sizing:border-box;padding:14px;font:inherit}.cancellation-panel .table-heading{flex-wrap:wrap}.cancellation-panel .button{margin-top:12px}
