:root {
  --background: #f7f5ef;
  --panel: #ffffff;
  --text: #172033;
  --muted: #6b7280;
  --primary: #111923;
  --accent: #c79745;
  --line: #e7e0d3;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-family: Inter, Arial, sans-serif;
  background: var(--background);
  color: var(--text);
}

a {
  color: inherit;
}

header {
  height: 68px;
  background: linear-gradient(120deg, #0c131c, #20242a);
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 28px;
}

header strong {
  font-size: 20px;
}

header small {
  display: block;
  color: #aeb8c8;
  margin-top: 2px;
}

.layout {
  display: grid;
  grid-template-columns: 235px 1fr;
  min-height: calc(100vh - 68px);
}

nav {
  background: #121a25;
  padding: 18px 12px;
}

nav a {
  display: block;
  color: #d8deea;
  text-decoration: none;
  padding: 11px 14px;
  border-radius: 9px;
  margin: 3px 0;
}

nav a:hover,
nav .ai {
  background: linear-gradient(90deg, #2b3541, #3c3324);
  color: #ffffff;
}

main {
  padding: 28px;
  min-width: 0;
}

.public {
  min-height: 100vh;
  display: grid;
  place-items: center;
  background: linear-gradient(140deg, #111827, #302c65);
}

h1 {
  margin-top: 0;
}

.cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 15px;
}

.card,
section {
  background: var(--panel);
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 20px;
  box-shadow: 0 5px 18px rgba(15, 23, 42, 0.04);
}

.card span {
  display: block;
  color: var(--muted);
  font-size: 14px;
}

.card strong {
  display: block;
  font-size: 26px;
  margin-top: 9px;
}

section {
  margin-top: 20px;
}

.grid-form {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.grid-form textarea {
  grid-column: 1 / -1;
}

input,
select,
textarea,
button {
  font: inherit;
  padding: 11px 12px;
  border: 1px solid #cfd5df;
  border-radius: 8px;
  width: 100%;
}

textarea {
  resize: vertical;
}

button {
  background: linear-gradient(135deg, #131d29, #b17b2a);
  color: #ffffff;
  border: 0;
  cursor: pointer;
  font-weight: 700;
}

.header-actions{display:flex;align-items:center;gap:14px}.header-actions a{color:#fff;text-decoration:none}.intelligence-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(145deg,#f1cf83,#9b651e);color:#13100b!important;font-weight:900;box-shadow:0 7px 24px #0005}.account-link{border:1px solid #a98b5d;padding:8px 13px;border-radius:9px}.brand-header{height:36px;width:36px;object-fit:cover;border-radius:10px;vertical-align:middle;margin-right:8px}.eyebrow{display:block;color:#a97524;font-size:11px;font-weight:900;letter-spacing:.12em;margin-bottom:6px}.page-title p{color:var(--muted);margin:5px 0 0}.ai-link,.connector-actions a{display:inline-flex;align-items:center;background:linear-gradient(135deg,#151d27,#b47d2e)!important;color:#fff!important;padding:11px 15px!important;border-radius:10px;text-decoration:none;font-weight:800}.dashboard-kpis{grid-template-columns:repeat(4,minmax(180px,1fr))}.direct-card{text-decoration:none;transition:.2s}.direct-card:hover{transform:translateY(-3px);box-shadow:0 16px 35px #2b21141c}.direct-card small{display:block;color:var(--muted);margin-top:7px}.dashboard-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.timeline-card{min-width:0}.section-title{display:flex;align-items:center;justify-content:space-between;gap:18px}.section-title h2{margin:0}.section-title a{color:#94671f;font-weight:800}.activity-list{display:grid;margin-top:14px}.activity-row{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;padding:13px 4px;text-decoration:none;border-bottom:1px solid var(--line)}.activity-row small{display:block;color:var(--muted);margin-top:4px}.activity-date,.status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#f3e8d2;color:#7d5418;padding:6px 9px;font-size:11px;font-weight:900;text-transform:capitalize}.empty-state{padding:28px;text-align:center;color:var(--muted);border:1px dashed #d6c9b4;border-radius:12px;background:#fcfaf5}.form-panel{border-top:4px solid #b78232}.grid-form label{display:grid;gap:6px;color:#5e6470;font-size:12px;font-weight:800}.wide-field{grid-column:1/-1}.event-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));gap:18px;margin-top:20px}.event-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:19px;box-shadow:0 8px 25px #30250e0b}.event-card h2{margin:17px 0 7px}.event-card p{color:var(--muted)}.event-card-head,.event-metrics{display:flex;justify-content:space-between;gap:12px}.event-metrics{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:15px 0}.event-metrics span{color:var(--muted);font-size:12px}.event-metrics b{display:block;color:var(--text);font-size:18px;margin-top:4px}.event-card details{margin-top:12px}.event-card summary{cursor:pointer;color:#97691f;font-weight:900}.ticket-form{display:grid;gap:8px;margin-top:12px}.commercial-connectors{display:flex;align-items:center;justify-content:space-between;gap:20px}.connector-actions{display:flex;gap:8px}.danger-button{background:#8e2f2b!important;width:auto;padding:8px 11px}.module-calculator label{display:grid;gap:5px}.electronic-ticket{width:min(820px,94vw);background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 30px 90px #0007}.ticket-brand{display:flex;align-items:center;gap:14px;background:#111923;color:#fff;padding:22px 28px}.ticket-brand img{width:54px;height:54px;object-fit:cover;border-radius:12px}.ticket-brand small{display:block;color:#d9c8aa}.ticket-body{display:grid;grid-template-columns:1fr 220px;gap:30px;padding:38px}.ticket-qr{width:220px;height:220px}.electronic-ticket footer{display:flex;align-items:center;justify-content:space-between;padding:20px 28px;background:#f3ead9}.electronic-ticket footer button{width:auto}.document-link{white-space:nowrap}.status-pill{white-space:nowrap}
@media(max-width:1000px){.dashboard-kpis{grid-template-columns:repeat(2,1fr)}.dashboard-columns,.event-grid{grid-template-columns:1fr}.grid-form{grid-template-columns:1fr 1fr}.commercial-connectors{align-items:flex-start;flex-direction:column}}
@media(max-width:720px){.layout{grid-template-columns:1fr}.layout nav{display:flex;overflow:auto;position:sticky;top:0;z-index:10}.layout nav a{white-space:nowrap}.grid-form,.dashboard-kpis,.ticket-body{grid-template-columns:1fr}.ticket-qr{width:180px;height:180px}.page-title{align-items:flex-start;flex-direction:column;gap:14px}.connector-actions{flex-wrap:wrap}.header-actions .account-link{display:none}}
@media print{header,.layout nav,.electronic-ticket footer button{display:none!important}.layout{display:block}.public{background:#fff}.electronic-ticket{box-shadow:none;width:100%}}

.grid-form button {
  width: auto;
}

table {
  width: 100%;
  border-collapse: collapse;
}

th,
td {
  text-align: left;
  border-bottom: 1px solid var(--line);
  padding: 11px 9px;
  font-size: 14px;
}

th {
  color: var(--muted);
}

.table-wrap {
  overflow: auto;
}

.page-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.page-title a {
  background: #ffffff;
  border: 1px solid var(--line);
  padding: 9px 12px;
  border-radius: 8px;
  text-decoration: none;
}

.signed-contract-toggle {
  width: auto;
  padding: 10px 14px;
  background: linear-gradient(135deg, #5648db, #2577d9);
}

.signed-contract-panel {
  border-left: 5px solid #6557e8;
}

.signed-contract-panel h2 {
  margin-top: 0;
}

.signed-contract-panel label {
  color: var(--muted);
  font-size: 13px;
}

.signed-contract-panel label input {
  margin-top: 5px;
}

.document-link {
  color: #5045c7;
  font-weight: 700;
}

.login-card {
  background: #ffffff;
  width: min(420px, 92vw);
  padding: 34px;
  border-radius: 18px;
}

.login-card label {
  display: block;
  margin: 15px 0;
}

.login-card input {
  margin-top: 6px;
}

.alert {
  background: #fee2e2;
  padding: 10px;
  border-radius: 8px;
  color: #991b1b;
}

.success {
  background: #dcfce7;
  padding: 10px;
  border-radius: 8px;
  color: #166534;
}

.auth-link {
  margin: 20px 0 0;
  text-align: center;
}

.brand-logo {
  display: block;
  width: 112px;
  height: 112px;
  object-fit: cover;
  object-position: 50% 28%;
  border-radius: 50%;
  margin: 0 auto 18px;
}

.brand-header {
  width: 38px;
  height: 38px;
  object-fit: cover;
  object-position: 50% 28%;
  vertical-align: middle;
  border-radius: 50%;
  margin-right: 8px;
}

.profile-form {
  max-width: 720px;
}

.ai-panel {
  border-left: 5px solid var(--accent);
}

.answer {
  margin-top: 18px;
  padding: 16px;
  background: #f0efff;
  border-radius: 10px;
}

.intelligence-shell {
  max-width: 1280px;
  margin: 0 auto;
}

.intelligence-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 22px;
}

.intelligence-heading h1 {
  margin: 5px 0 7px;
  font-size: 32px;
}

.intelligence-heading p {
  margin: 0;
  color: var(--muted);
}

.eyebrow {
  color: #5b4ee8;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .13em;
}

.core-status {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 15px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  box-shadow: 0 5px 18px rgba(15, 23, 42, .04);
}

.core-status span:last-child {
  display: flex;
  flex-direction: column;
}

.core-status small {
  color: var(--muted);
  margin-top: 2px;
}

.status-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 0 5px #dcfce7;
}

.ai-workspace {
  display: grid;
  grid-template-columns: 285px minmax(0, 1fr);
  min-height: 650px;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 20px;
  box-shadow: 0 18px 50px rgba(30, 41, 59, .08);
}

.ai-sidebar {
  padding: 28px 22px;
  color: #eef2ff;
  background: linear-gradient(165deg, #111936 0%, #19275d 60%, #342b78 100%);
}

.ai-sidebar img {
  width: 72px;
  height: 72px;
  object-fit: cover;
  border-radius: 18px;
  box-shadow: 0 0 28px rgba(34, 211, 238, .28);
}

.ai-sidebar h2 {
  margin: 22px 0 8px;
  font-size: 19px;
}

.ai-sidebar > p {
  margin: 0 0 24px;
  color: #bfc9eb;
  font-size: 14px;
  line-height: 1.55;
}

.ai-capability {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 13px 0;
  border-top: 1px solid rgba(255, 255, 255, .1);
}

.ai-capability > span {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  border-radius: 10px;
  background: rgba(117, 102, 255, .3);
  color: #67e8f9;
}

.ai-capability div {
  display: flex;
  flex-direction: column;
}

.ai-capability small {
  margin-top: 3px;
  color: #aeb9dd;
  line-height: 1.3;
}

.ai-chat {
  display: flex;
  flex-direction: column;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.chat-thread {
  flex: 1;
  padding: 30px;
  overflow: auto;
  background:
    radial-gradient(circle at 90% 10%, rgba(117, 102, 255, .08), transparent 28%),
    #fbfcff;
}

.message {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  max-width: 82%;
  margin-bottom: 24px;
}

.message p {
  margin: 7px 0 0;
  padding: 14px 16px;
  border-radius: 4px 16px 16px 16px;
  background: #fff;
  border: 1px solid #e8ebf3;
  line-height: 1.6;
  white-space: pre-wrap;
  box-shadow: 0 5px 16px rgba(15, 23, 42, .04);
}

.message-avatar {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 12px;
  background: linear-gradient(135deg, #6557e8, #22b9de);
  color: #fff;
  font-weight: 800;
}

.intelligence-avatar {
  overflow: hidden;
  padding: 0;
  background: #080d25;
}

.intelligence-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.user-message {
  margin-left: auto;
  justify-content: flex-end;
  text-align: right;
}

.user-message p {
  text-align: left;
  color: #fff;
  border: 0;
  border-radius: 16px 4px 16px 16px;
  background: linear-gradient(135deg, #273b75, #6756db);
}

.message-meta {
  display: block;
  margin-top: 7px;
  color: var(--muted);
}

.prompt-suggestions {
  display: flex;
  gap: 8px;
  padding: 14px 22px 8px;
  overflow-x: auto;
  border-top: 1px solid #edf0f6;
}

.prompt-suggestions button {
  width: auto;
  flex: 0 0 auto;
  padding: 8px 11px;
  color: #4a45a5;
  background: #f3f1ff;
  border: 1px solid #ded9ff;
  border-radius: 999px;
  font-size: 13px;
  font-weight: 600;
}

.ai-composer {
  display: flex;
  align-items: flex-end;
  gap: 10px;
  margin: 8px 22px 5px;
  padding: 9px;
  border: 1px solid #cfd5e3;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(15, 23, 42, .07);
}

.ai-composer textarea {
  min-height: 50px;
  max-height: 150px;
  border: 0;
  outline: none;
}

.ai-composer button {
  width: auto;
  padding: 12px 17px;
  border-radius: 11px;
  background: linear-gradient(135deg, #5648db, #2577d9);
}

.ai-disclaimer {
  margin: 5px 22px 16px;
  color: var(--muted);
  text-align: center;
  font-size: 12px;
}

.profile-thumb,.profile-placeholder{width:42px;height:42px;border-radius:12px;object-fit:cover;display:grid;place-items:center;background:#eef1ff;color:#4f46a5;font-weight:800}.profile-photo{width:120px;height:120px;border-radius:18px;object-fit:cover;border:1px solid #dfe3ec}.direct-card{text-decoration:none;color:inherit;transition:transform .18s,border-color .18s}.direct-card:hover{transform:translateY(-2px);border-color:#7b6ae5}.alert-card{background:#fff7ed;border-color:#f5c88c}.page-title>div>p{margin:5px 0 0;color:var(--muted)}.ai-link{padding:11px 15px;border-radius:11px;background:linear-gradient(135deg,#5648db,#2577d9);color:#fff;text-decoration:none;font-weight:700}.inline-stage{margin:0}.inline-stage select{min-width:120px}.priority-row{background:#fff8ee}.priority-row td:first-child{border-left:3px solid #e89832}.table-wrap td small{display:block;margin-top:4px;color:var(--muted)}

@media (max-width: 900px) {
  .layout {
    grid-template-columns: 1fr;
  }

  nav {
    display: flex;
    overflow: auto;
    gap: 5px;
  }

  nav a {
    white-space: nowrap;
  }

  .cards {
    grid-template-columns: repeat(2, 1fr);
  }

  .grid-form {
    grid-template-columns: 1fr;
  }

  main {
    padding: 16px;
  }

  .intelligence-heading {
    flex-direction: column;
  }

  .ai-workspace {
    grid-template-columns: 1fr;
  }

  .ai-sidebar {
    display: none;
  }

  .message {
    max-width: 95%;
  }
}

.client-actions{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}.client-actions form{display:flex;gap:.4rem;margin:0}.secondary-button,.document-link{display:inline-flex;align-items:center;justify-content:center;padding:.62rem .85rem;border:1px solid #cda45f;border-radius:10px;color:#8c5e18;text-decoration:none;background:#fffaf0}.connector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.connector-card{display:flex;flex-direction:column;gap:.4rem;padding:1rem;border:1px solid var(--line);border-radius:14px;background:#fff}.connector-card span{color:var(--muted)}.contract-generator{border:1px solid #d6b77e;background:linear-gradient(135deg,#fff8e9,#fff)}
@media(max-width:800px){.connector-grid{grid-template-columns:1fr}.client-actions{min-width:190px}}

/* Ergonomie des formulaires métier et photos produits */
html,body{min-height:100%}.layout>main{min-width:0;min-height:0;overflow-y:auto;max-height:calc(100dvh - 68px);overscroll-behavior:contain}.table-wrap{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.grid-form>*{min-width:0}.product-thumb{display:block;width:58px;height:58px;border-radius:12px;object-fit:cover;border:1px solid var(--line);background:#f3f4f8}.product-photo-placeholder{display:grid;place-items:center;width:58px;height:58px;border-radius:12px;background:#f0f2f7;color:var(--muted);font-size:11px}.commercial-document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0}.document-upload-card{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem;padding:1rem;border:1px solid var(--line);border-radius:14px;background:#fff}.document-upload-card p{margin:0;color:var(--muted)}.document-upload-card button{width:auto}.checkbox-row{display:flex;align-items:center;gap:.6rem}.checkbox-row input{width:auto}.success-banner{padding:.85rem 1rem;border:1px solid #72c7a7;border-radius:12px;background:#edfff7;color:#176348}
@media(max-width:800px){.commercial-document-grid{grid-template-columns:1fr}.layout>main{max-height:none;overflow:visible}.public{align-items:flex-start;overflow-y:auto;padding-top:24px;padding-bottom:24px}}

/* Contrôle des billets électroniques */
.ticket-scan-result{width:min(640px,92vw);margin:auto;text-align:center;background:#fff;border:3px solid;border-radius:24px;padding:34px;box-shadow:0 30px 90px #0007}.ticket-scan-brand{display:flex;align-items:center;justify-content:center;gap:14px;padding:14px;border-radius:16px;background:#111923;color:#fff;text-align:left}.ticket-scan-brand img{width:76px;height:76px;object-fit:cover;border-radius:14px}.ticket-scan-brand strong,.ticket-scan-brand small{display:block}.ticket-scan-brand small{margin-top:5px;color:#d9c8aa}.scan-icon{display:grid;place-items:center;width:110px;height:110px;margin:22px auto;border-radius:50%;color:#fff;font-size:72px;font-weight:900}.ticket-scan-result h1{font-size:42px;margin:8px 0 20px}.ticket-scan-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;text-align:left;margin:24px 0 0}.ticket-scan-details div{padding:13px;border-radius:12px;background:#f7f3eb}.ticket-scan-details dt{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.ticket-scan-details dd{margin:5px 0 0;font-weight:800}.ticket-scan-accepted{border-color:#20864a}.ticket-scan-accepted .scan-icon{background:#20864a}.ticket-scan-accepted h1{color:#166c3a}.ticket-scan-used{border-color:#c38622}.ticket-scan-used .scan-icon{background:#c38622}.ticket-scan-used h1{color:#8a5a0d}.ticket-scan-refused{border-color:#a93333}.ticket-scan-refused .scan-icon{background:#a93333}.ticket-scan-refused h1{color:#8d2525}@media(max-width:640px){.ticket-scan-details{grid-template-columns:1fr}.ticket-scan-result h1{font-size:34px}.ticket-scan-brand img{width:62px;height:62px}}

/* Billet et contrôle QR adaptatifs : téléphone, tablette, ordinateur et terminal de scan */
.public{min-height:100dvh;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));box-sizing:border-box;overflow:auto}.electronic-ticket{width:min(860px,100%);max-height:none;border-radius:clamp(14px,2.5vw,24px)}.ticket-brand{gap:clamp(10px,2vw,18px);padding:clamp(14px,3vw,24px)}.ticket-brand img{width:clamp(48px,9vw,78px);height:clamp(48px,9vw,78px)}.ticket-brand strong{font-size:clamp(15px,2.4vw,22px)}.ticket-body{grid-template-columns:minmax(0,1fr) minmax(170px,clamp(180px,27vw,260px));align-items:center;gap:clamp(18px,4vw,38px);padding:clamp(20px,5vw,42px)}.ticket-body h1{font-size:clamp(28px,5vw,48px);overflow-wrap:anywhere}.ticket-qr{display:block;width:clamp(170px,27vw,260px);height:clamp(170px,27vw,260px);max-width:100%;justify-self:center;image-rendering:auto}.electronic-ticket footer{gap:14px;flex-wrap:wrap;padding:clamp(14px,3vw,22px) clamp(18px,4vw,30px)}.electronic-ticket footer code{overflow-wrap:anywhere}.ticket-scan-result{width:min(680px,100%);box-sizing:border-box;padding:clamp(16px,4vw,36px);border-radius:clamp(14px,3vw,26px)}.ticket-scan-brand{gap:clamp(10px,2vw,16px);padding:clamp(10px,2.5vw,16px)}.ticket-scan-brand img{width:clamp(52px,12vw,86px);height:clamp(52px,12vw,86px);flex:0 0 auto}.ticket-scan-brand strong{font-size:clamp(14px,3.5vw,21px)}.ticket-scan-brand small{font-size:clamp(10px,2.5vw,14px)}.scan-icon{width:clamp(76px,18vw,116px);height:clamp(76px,18vw,116px);font-size:clamp(48px,12vw,76px);margin:clamp(14px,3vw,24px) auto}.ticket-scan-result h1{font-size:clamp(28px,7vw,44px);overflow-wrap:anywhere}.ticket-scan-details{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:clamp(8px,2vw,13px);margin-top:clamp(15px,3vw,26px)}.ticket-scan-details dd,.ticket-scan-details code{overflow-wrap:anywhere;word-break:break-word}
@media(max-width:600px){.ticket-body{grid-template-columns:1fr;text-align:center}.ticket-body hr{margin-inline:auto}.ticket-qr{width:min(72vw,240px);height:min(72vw,240px)}.electronic-ticket footer{justify-content:center;text-align:center}.electronic-ticket footer button{width:100%}}
@media(max-height:520px) and (orientation:landscape){.public{place-items:start center}.electronic-ticket,.ticket-scan-result{margin:auto}.ticket-body{grid-template-columns:minmax(0,1fr) minmax(150px,28vh);padding:16px 22px}.ticket-qr{width:min(28vh,190px);height:min(28vh,190px)}.ticket-scan-brand img{width:50px;height:50px}.scan-icon{width:58px;height:58px;font-size:38px;margin:8px auto}.ticket-scan-result h1{font-size:28px;margin:4px 0 10px}.ticket-scan-details{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px}.ticket-scan-details div{padding:8px}}
.event-status-form{margin:0}.event-status-form select{width:auto;min-width:125px;padding:7px 30px 7px 10px;border:1px solid #d4b374;border-radius:999px;background:#f3e8d2;color:#7d5418;font-size:12px;font-weight:900;text-transform:capitalize;cursor:pointer}
.inline-control-event{display:flex;gap:7px;align-items:center;margin:0}.inline-control-event select{min-width:170px}.inline-control-event button{width:auto;padding:8px 10px}.control-event-assignment{display:grid;gap:5px;margin:20px 0;padding:16px;border:1px solid #d4b374;border-radius:14px;background:#fff8e8;text-align:left}.control-event-assignment span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.control-event-assignment strong{font-size:20px}.control-event-assignment small{color:var(--muted)}
.ticket-qr-panel{display:grid;justify-items:center;gap:8px;text-align:center}.ticket-qr-panel strong{color:#7d5418;font-size:clamp(14px,2.4vw,18px)}.ticket-qr-panel small{max-width:260px;color:var(--muted);font-size:11px;line-height:1.4}
.event-card-cancelled{background:#0d0d0f;color:#fff;border-color:#2b2b2f}.event-card-cancelled h2,.event-card-cancelled .event-metrics b,.event-card-cancelled strong{color:#fff}.event-card-cancelled p,.event-card-cancelled .event-metrics span{color:#c5c5c8}.event-card-cancelled select{background:#18181b;color:#fff;border-color:#555}.status-cancelled{background:#050505!important;color:#fff!important}.cancelled-row{background:#111!important;color:#fff}.cancelled-row td,.cancelled-row small{color:#fff!important}
.reservation-actions{display:grid;gap:7px;min-width:190px}.reservation-actions form{margin:0}.reservation-actions button{width:100%}
.document-lines{border:1px solid rgba(184,124,46,.35);border-radius:16px;padding:16px;background:rgba(255,255,255,.025)}
.document-lines-title,.document-live-totals{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.document-line{display:grid;grid-template-columns:minmax(190px,2.5fr) .7fr .8fr 1fr .7fr .65fr 42px;gap:8px;align-items:center;margin:8px 0}
.document-line input{min-width:0;width:100%}
.document-line-header{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:#c8b287;font-weight:700}
.document-live-totals{justify-content:flex-end;margin:16px 0 0;padding-top:14px;border-top:1px solid rgba(184,124,46,.25)}
.document-live-totals span{padding:8px 12px;border-radius:10px;background:rgba(184,124,46,.09)}
@media(max-width:900px){.document-line{grid-template-columns:1fr 1fr}.document-line-header{display:none}.document-line input[name="line_description"]{grid-column:1/-1}.document-line .danger-button{grid-column:2;justify-self:end}}
.inline-payment-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 0}.inline-payment-form input,.inline-payment-form select{width:auto;min-width:130px}.payment-history{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;color:#c8b287}.payment-history span{padding:5px 9px;border:1px solid rgba(184,124,46,.25);border-radius:8px}
