/* Generated from existing portal styles at a stable 1600 x 900 desktop canvas. */
:root {font-family: Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color: #213047; background: #f5f7fb; font-synthesis: none; --accent: #1559b4; --tint: #eaf2fc; --line: #e2e8f0; --muted: #68758b; --shadow: 0 5px 24px #1c36570a;}
* {box-sizing: border-box;}
body {margin: 0; font-size: 14px; line-height: 1.55;}
button,input,select,textarea {font: inherit;}
button,a,input,select,textarea {touch-action: manipulation;}
button {cursor: pointer;}
button:disabled {cursor: not-allowed; opacity: .55;}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible {outline: 3px solid #74adf2; outline-offset: 3px;}
a {color: var(--accent);}
h1,h2,h3,p {margin-top: 0;}
h1 {font-size: 26px; line-height: 1.25; letter-spacing: -.7px; margin-bottom: 9px;}
h2 {font-size: 18px; line-height: 1.35; letter-spacing: -.2px;}
h3 {font-size: 15px; margin-bottom: 8px;}
p:last-child {margin-bottom: 0;}
.muted,.help {color: var(--muted);}
.help {font-size: 12px; margin: 5px 0 0;}
.small {font-size: 12px;}
.eyebrow {text-transform: uppercase; letter-spacing: 1.4px; font-size: 10px; font-weight: 750; color: var(--accent); margin-bottom: 10px;}
.sr-only {position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;}
.skip-link {position: absolute; left: 10px; top: -60px; z-index: 50; background: #fff; padding: 12px; border-radius: 8px;}
.skip-link:focus {top: 10px;}
.initial {max-width: 420px; margin: calc(var(--triq-stage-height) * 0.18) auto; text-align: center; padding: 20px;}
.initial img {width: 180px; max-height: 80px; object-fit: contain; margin-bottom: 20px;}
.topbar {height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 20px; background: #fff; border-bottom: 1px solid var(--line); padding: 12px 30px;}
.brand {display: flex; align-items: center; gap: 20px; min-width: 0;}
.brand img {width: 146px; max-height: 48px; object-fit: contain;}
.brand-line {border-left: 1px solid var(--line); padding-left: 20px; font-size: 12px; color: var(--muted);}
.brand-line strong {display: block; font-size: 14px; color: #243247;}
.top-actions {display: flex; align-items: center; gap: 12px;}
.avatar {width: 36px; height: 36px; border-radius: 12px; background: var(--tint); display: grid; place-items: center; color: var(--accent); font-weight: 700; flex-shrink: 0;}
.identity {text-align: right; font-size: 12px; max-width: 230px; overflow-wrap: anywhere;}
.identity strong {display: block; font-size: 13px;}
.btn {display: inline-flex; align-items: center; justify-content: center; gap: 7px; border: 1px solid var(--line); border-radius: 9px; padding: 9px 14px; background: #fff; color: #2c3e55; text-decoration: none; font-weight: 600; font-size: 12px; min-height: 38px; line-height: 1.35;}
.btn:hover {background: #f3f6fa;}
.btn.primary {background: var(--accent); border-color: var(--accent); color: #fff;}
.btn.primary:hover {filter: brightness(.94);}
.btn.danger {color: #a62e39; border-color: #efcbd0;}
.btn.link {border-color: transparent; background: transparent; padding-left: 0; padding-right: 0; color: var(--accent);}
.btn.compact {padding: 6px 10px; min-height: 32px;}
.layout {display: grid; grid-template-columns: 232px minmax(0,1fr); min-height: calc(calc(var(--triq-stage-height) * 1) - 78px);}
.sidebar {background: #fff; border-right: 1px solid var(--line); padding: 22px 14px; display: flex; flex-direction: column; gap: 18px;}
.workspace-info {padding: 0 10px 15px; border-bottom: 1px solid var(--line); overflow-wrap: anywhere;}
.workspace-info strong {display: block; font-size: 13px;}
.workspace-info span {font-size: 11px; color: var(--muted);}
.sidebar nav {display: grid; gap: 4px;}
.nav-button {text-align: left; border: 0; background: transparent; border-radius: 9px; color: #596a80; padding: 11px 12px; font-size: 12px; font-weight: 550; display: flex; gap: 10px; align-items: center;}
.nav-button:hover {background: #f7f9fc;}
.nav-button.active {background: var(--tint); color: var(--accent); font-weight: 700;}
.nav-dot {width: 6px; height: 6px; border-radius: 2px; background: currentColor; opacity: .7;}
.sidebar-note {padding: 15px 10px; font-size: 11px; color: var(--muted); margin-top: auto;}
.main {padding: 30px; min-width: 0; max-width: 1400px; width: 100%;}
.page-heading {display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 24px;}
.page-heading p {max-width: 760px; font-size: 13px; color: var(--muted);}
.card {background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 22px; box-shadow: var(--shadow); min-width: 0;}
.card+.card {margin-top: 20px;}
.card-head {display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 17px;}
.card-head h2 {margin: 0;}
.grid {display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px;}
.grid.three {grid-template-columns: repeat(3,minmax(0,1fr));}
.grid>.card+.card {margin-top: 0;}
.stack {display: grid; gap: 18px;}
.notice {padding: 13px 16px; background: #f0f5fb; border: 1px solid #dce6f4; border-radius: 10px; font-size: 12px; color: #415a77; overflow-wrap: anywhere;}
.notice.warning {background: #fff9ed; border-color: #f2e3be; color: #815e21;}
.notice.success {background: #eef9f4; border-color: #cae9d9; color: #21684c;}
.notice.error {background: #fff1f2; border-color: #f0cdd3; color: #9d3441;}
.notice+.card,.notice+.grid {margin-top: 20px;}
.badge {display: inline-flex; border-radius: 20px; padding: 3px 8px; font-size: 10px; font-weight: 700; background: #eff3f8; color: #687991; white-space: nowrap;}
.badge.active,.badge.clean {background: #e8f7ef; color: #237d53;}
.badge.quarantined,.badge.pending {background: #fff4dd; color: #947027;}
.badge.suspended,.badge.disabled,.badge.rejected,.badge.deleted {background: #fdeef0; color: #a5404b;}
.actions {display: flex; gap: 9px; align-items: center; flex-wrap: wrap;}
.fields {display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 17px;}
.field {display: grid; gap: 6px; min-width: 0; align-content: start;}
.field.full {grid-column: 1/-1;}
label,.field-label {font-size: 12px; font-weight: 650; color: #354760;}
input:not([type=checkbox]),select,textarea {width: 100%; min-width: 0; border: 1px solid #d8e0ea; border-radius: 8px; padding: 10px 11px; background: #fff; color: #283c54;}
input[readonly] {background: #f6f8fb; color: #66778c;}
textarea {min-height: 100px; resize: vertical;}
input[type=checkbox] {accent-color: var(--accent); width: 15px; height: 15px; flex: 0 0 auto;}
.form-footer {display: flex; align-items: center; gap: 14px; flex-wrap: wrap; border-top: 1px solid var(--line); margin-top: 22px; padding-top: 18px;}
.form-error:empty {display: none;}
.form-error {margin-top: 16px;}
.detail-list {display: grid; gap: 0; margin: 0;}
.detail-list>div {display: grid; grid-template-columns: 160px minmax(0,1fr); padding: 11px 0; border-bottom: 1px solid #edf0f5; gap: 16px;}
.detail-list>div:last-child {border: 0;}
.detail-list dt {font-size: 12px; color: var(--muted);}
.detail-list dd {margin: 0; font-size: 12px; overflow-wrap: anywhere;}
.table-scroll {overflow-x: auto; max-width: 100%;}
table {width: 100%; border-collapse: collapse; font-size: 12px; text-align: left;}
th {font-weight: 650; color: #75849a; background: #f8fafc; font-size: 10px; text-transform: uppercase; letter-spacing: .4px;}
th,td {padding: 12px; border-bottom: 1px solid #eaf0f6; vertical-align: top;}
td {overflow-wrap: anywhere;}
td strong {display: block;}
td .small {color: var(--muted);}
.empty {padding: 35px 16px; text-align: center; color: var(--muted);}
.auth-wrap {display: grid; grid-template-columns: minmax(280px,1fr) minmax(340px,500px); min-height: calc(calc(var(--triq-stage-height) * 1) - 78px); max-width: 1240px; margin: auto; gap: 65px; padding: 65px 45px; align-items: center;}
.auth-copy h1 {font-size: 38px; max-width: 460px;}
.auth-copy p {max-width: 430px; color: var(--muted);}
.auth-logos {display: flex; gap: 25px; align-items: center; margin: 35px 0;}
.auth-logos img {width: 100px; max-height: 60px; object-fit: contain;}
.auth-card {padding: 30px;}
.auth-card .fields {grid-template-columns: 1fr;}
.auth-tabs {display: flex; gap: 15px; border-bottom: 1px solid var(--line); margin-bottom: 24px;}
.auth-tab {border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--muted); font-size: 12px; font-weight: 650; padding: 0 0 13px;}
.auth-tab.active {color: var(--accent); border-bottom-color: var(--accent);}
.auth-footer {font-size: 11px; color: var(--muted); margin: 20px 0 0;}
.portal-grid {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px;}
.portal-card {text-align: left; border: 1px solid var(--line); background: #fff; box-shadow: var(--shadow); border-radius: 14px; padding: 24px; min-width: 0; color: inherit; display: flex; flex-direction: column; gap: 13px;}
.portal-card:hover {border-color: var(--accent); transform: translateY(-1px);}
.portal-card img {max-width: 125px; height: 60px; object-fit: contain; object-position: left center;}
.portal-card strong {font-size: 16px;}
.portal-card span {font-size: 12px; color: var(--muted);}
.portal-card .badge {align-self: flex-start; color: var(--accent); background: var(--tint);}
.workspaces {display: grid; gap: 10px; max-width: 800px;}
.workspace-card {display: flex; justify-content: space-between; gap: 18px; align-items: center; padding: 18px; border: 1px solid var(--line); border-radius: 11px; background: #fff; text-align: left; color: inherit;}
.workspace-card:hover {border-color: var(--accent);}
.workspace-card strong {display: block; font-size: 14px;}
.workspace-card span {font-size: 12px; color: var(--muted);}
.capabilities {display: grid; gap: 12px;}
.capability {display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; padding: 12px 0; border-bottom: 1px solid #edf1f6;}
.capability:last-child {border: 0;}
.capability strong {display: block; font-size: 12px;}
.capability p {color: var(--muted); font-size: 11px; margin: 4px 0 0;}
.count {font-size: 28px; font-weight: 750; letter-spacing: -1px; color: var(--accent);}
.code {font-family: ui-monospace,SFMono-Regular,Consolas,monospace; font-size: 11px; overflow-wrap: anywhere;}
.secret {display: block; background: #eef5fc; border: 1px solid #d4e4f8; padding: 15px; border-radius: 9px; letter-spacing: 2px; font-family: ui-monospace,monospace; font-size: 16px; overflow-wrap: anywhere; margin: 12px 0 18px; user-select: all;}
.checks {display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin: 12px 0 0;}
.check {display: flex; align-items: flex-start; gap: 8px; font-size: 11px; line-height: 1.4; font-weight: 400; padding: 6px; border-radius: 6px;}
.check:hover {background: #f6f8fb;}
.permission-group {border: 1px solid var(--line); border-radius: 10px; padding: 14px; margin-top: 12px;}
.permission-group>label {display: flex; align-items: center; gap: 9px;}
.permission-group .checks[hidden] {display: none;}
.toolbar {display: flex; gap: 12px; align-items: end; flex-wrap: wrap; margin-bottom: 20px;}
.toolbar>.field {flex: 1; min-width: 180px;}
.separator {height: 1px; background: var(--line); margin: 22px 0;}
.loading {display: flex; align-items: center; gap: 10px; color: var(--muted); padding: 35px 0;}
.spinner {width: 17px; height: 17px; border: 2px solid #dce6f3; border-top-color: var(--accent); border-radius: 50%; animation: spin .8s linear infinite;}
.file-row {display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 20px; padding: 15px 0; border-bottom: 1px solid var(--line);}
.file-row:last-child {border: 0;}
.file-name {font-weight: 650; font-size: 12px; overflow-wrap: anywhere;}
.file-meta {font-size: 11px; color: var(--muted); margin-top: 5px;}
.audit-details {max-width: 340px; white-space: pre-wrap; overflow-wrap: anywhere; font-size: 10px; margin: 0;}
.footer-note {margin-top: 24px; color: var(--muted); font-size: 11px;}
.stack-gap {margin-top: 20px;}
[hidden] {display: none !important;}
@keyframes spin {to {transform: rotate(360deg);} }
@media (prefers-reduced-motion:reduce) {*,*:before,*:after {animation: none !important; transition: none !important;}
.portal-card:hover {transform: none;}}


[data-portal="oem"],[data-portal="admin"] {--accent: #1559b4; --tint: #eaf2fc;}
[data-portal="processor"] {--accent: #138359; --tint: #eaf7f0;}
[data-portal="employee"] {--accent: #bd631b; --tint: #fff3e7;}
.picker-main {margin: auto;}
.business-split {display: grid; grid-template-columns: minmax(0,1.45fr) minmax(285px,1fr); gap: 20px; align-items: start;}
.business-split>.card+.card {margin-top: 0;}
.business-shortcuts {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px;}
.shortcut {display: flex; align-items: center; justify-content: space-between; padding: 18px; border: 1px solid var(--line); border-radius: 12px; background: #fff; color: #354760; text-align: left; font-weight: 600; box-shadow: var(--shadow);}
.shortcut:hover {border-color: var(--accent); color: var(--accent);}
.welcome-card {display: flex; align-items: center; gap: 20px; background: var(--tint); padding: 25px; border-radius: 14px; margin-bottom: 20px;}
.welcome-card img {width: 100px; height: 60px; object-fit: contain;}
.welcome-card div {flex: 1;}
.welcome-card h2 {margin-bottom: 5px;}
.welcome-card p {margin: 0; color: var(--muted); font-size: 12px;}
.notification-row {display: flex; gap: 15px; align-items: start; padding: 16px 0; border-bottom: 1px solid var(--line);}
.notification-row>div {flex: 1; min-width: 0;}
.notification-row p {font-size: 12px; color: var(--muted); margin: 6px 0; white-space: pre-line; overflow-wrap: anywhere;}
.notification-row.unread strong:before {content: ''; display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--accent); margin-right: 8px;}
.timeline {display: grid; gap: 0;}
.timeline-item {padding: 14px 0 14px 20px; border-left: 2px solid var(--line); position: relative;}
.timeline-item:before {content: ''; position: absolute; left: -5px; top: 20px; width: 8px; height: 8px; border-radius: 50%; background: var(--accent);}
.timeline-item p {margin: 4px 0; font-size: 12px; white-space: pre-line; overflow-wrap: anywhere;}
.toolbar.compact {margin-bottom: 14px;}
.ticket-title {font-size: 18px;}
.record-ref {display: block; font-size: 10px; color: var(--muted); margin-top: 4px; overflow-wrap: anywhere;}
.money {font-variant-numeric: tabular-nums; font-weight: 650; white-space: nowrap;}
.metric-row {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-bottom: 20px;}
.metric {padding: 18px; background: #fff; border: 1px solid var(--line); border-radius: 12px;}
.metric span {display: block; font-size: 11px; color: var(--muted);}
.metric strong {font-size: 22px; color: var(--accent);}
.badge.submitted,.badge.captured,.badge.completed,.badge.resolved,.badge.approved,.badge.paid {background: #e8f7ef; color: #237d53;}
.badge.open,.badge.pending_payment,.badge.awaiting_payment,.badge.in_progress,.badge.awaiting_review {background: #fff4dd; color: #947027;}
.badge.failed,.badge.cancelled,.badge.overdue {background: #fdeef0; color: #a5404b;}
.inline-label {font-size: 11px; font-weight: 650; color: var(--muted); margin: 16px 0 8px;}
.auth-tabs {flex-wrap: wrap;}
.registration-wrap {max-width: 850px; margin: 35px auto; padding: 0 20px;}
.registration-wrap>.card {padding: 26px;}
.text-block {white-space: pre-line; overflow-wrap: anywhere; font-size: 13px;}
.qr-placeholder {display: block; max-width: 100%; font-size: 12px; padding: 16px; border-radius: 10px; background: var(--tint); overflow-wrap: anywhere; user-select: all;}
.financial-note {font-size: 12px; color: var(--muted); margin: 12px 0;}
.record-list {display: grid; gap: 10px;}
.record-card {padding: 15px; border: 1px solid var(--line); border-radius: 10px;}
.record-card h3 {margin-bottom: 5px;}
.record-card p {font-size: 12px; color: var(--muted);}
.business-form-actions {display: flex; gap: 10px; flex-wrap: wrap;}
.business-split>.stack>.card+.card {margin-top: 0;}
.table-scroll .actions {min-width: 95px;}
.receipt-total {font-size: 25px; color: var(--accent); font-weight: 700;}
.provider-options {display: flex; gap: 10px; flex-wrap: wrap;}
.provider-option {padding: 12px; border: 1px solid var(--line); border-radius: 8px; display: flex; align-items: center; gap: 8px;}
.business-search {max-width: 440px;}
.qr-image {width: 220px; height: 220px; object-fit: contain; max-width: 100%;}


.finance-tabs {padding-bottom: 20px;}
.qr-image svg {width: 100%; height: 100%;}
[data-reduced-motion="true"] *,[data-reduced-motion="true"] *:before,[data-reduced-motion="true"] *:after {animation: none !important; transition: none !important;}
.record-card+.record-card {margin-top: 12px;}
.geo-group {grid-column: 1/-1; margin: 0;}
.select-search {font-size: .85rem !important; margin-bottom: .4rem !important; padding: .5rem .7rem !important;}
.director-card {border: 1px solid var(--line,#d7e2ef); border-radius: 12px; padding: 1.1rem; margin: 1rem 0;}
.director-card legend {font-weight: 700; padding: 0 .4rem;}
.permission-grid {display: grid; grid-template-columns: repeat(auto-fit,minmax(210px,1fr)); gap: .6rem;}
.stage1-banner {border-left: 4px solid #1964c3; background: #edf5ff; padding: 1.3rem; border-radius: 10px; margin: 0 0 1.5rem;}
.stage1-banner h2 {margin-top: 0;}
.company-code {font: 600 1.05rem ui-monospace,monospace; overflow-wrap: anywhere;}
.guide-dialog {max-width: 580px; width: calc(100% - 2rem); border: 1px solid #d1dff0; border-radius: 20px; padding: 1.8rem; color: #173252; box-shadow: 0 20px 70px #102a4533;}
.guide-dialog::backdrop {background: #102a4580;}
.guide-dialog li {margin: .7rem 0;}
.price-card {background: #edf8f1; border: 1px solid #b9ddc4; border-radius: 12px; padding: 1.3rem; margin: 1rem 0;}
.price-card strong {font-size: 1.4rem;}
.stage1-actions {display: flex; flex-wrap: wrap; gap: .6rem;}
.country-label {white-space: nowrap;}
.initial-password {max-width: 640px; margin: 3rem auto;}
.director-result {overflow-wrap: anywhere;}
.stage1-small {font-size: .9rem; color: #566c83;}
.chat-layout {display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 24px; align-items: start;}
.chat-main,.chat-sidebar {min-width: 0; display: grid; gap: 20px;}
.chat-message {padding: 16px 18px; margin: 12px 0; border: 1px solid #d5deeb; border-radius: 14px; background: #fff; overflow-wrap: anywhere;}
.chat-message.mine {background: #eef5ff; border-color: #b6ccec; margin-left: 28px;}
.chat-message-head {display: flex; gap: 12px; align-items: center; flex-wrap: wrap; color: #486078; font-size: .85rem;}
.chat-message-head strong {color: #163a65;}
.chat-body {white-space: pre-wrap; margin: 12px 0; line-height: 1.6;}
.chat-message blockquote {border-left: 3px solid #5e83b1; padding: 8px 12px; margin: 12px 0; background: #f0f4fa;}
.chat-message-actions,.chat-attachments,.chat-pending {display: flex; gap: 6px; flex-wrap: wrap; margin: 10px 0;}
.chat-message-actions button {font-size: .8rem; padding: 6px 9px;}
.chat-message small {color: #486078;}
.chat-translation {padding: 10px; border: 1px dashed #94abc6; border-radius: 8px; margin: 12px 0;}
.chat-translation summary {cursor: pointer; font-size: .85rem;}
.chat-preview {display: block; max-width: min(calc(var(--triq-stage-width) * 0.85),850px); max-height: calc(var(--triq-stage-height) * 0.7); margin-bottom: 16px;}
dialog {max-width: min(calc(var(--triq-stage-width) * 0.92),900px); border: 1px solid #bdcfe5; border-radius: 16px; padding: 24px; box-shadow: 0 16px 70px #13284355;}
dialog::backdrop {background: #07182daa;}
.triq-call-panel {position: fixed; z-index: 200; right: 18px; bottom: 18px; width: min(760px,calc(calc(var(--triq-stage-width) * 1) - 36px)); max-height: calc(var(--triq-stage-height) * 0.85); overflow: auto; border: 1px solid #365575; background: #10243c; color: #fff; border-radius: 18px; padding: 20px; box-shadow: 0 18px 70px #071b4077;}
.triq-call-panel h2,.triq-call-panel label {color: #fff;}
.call-head,.call-controls {display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap;}
.call-head h2 {margin: 0;}
.call-controls {justify-content: flex-start; margin: 14px 0;}
.call-videos {display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px;}
.call-videos video {width: 100%; max-height: 230px; background: #061426; border-radius: 10px; object-fit: contain;}
.call-videos audio {display: none;}
.triq-call-panel .check {display: flex; align-items: start; gap: 10px; margin: 14px 0;}
.triq-call-panel select {display: block; margin: 6px 0 14px; color: #152b47; background: #fff; max-width: 100%;}
.call-status {color: #bddbff;}
.call-captions {font-size: 1rem; line-height: 1.5;}
.call-captions p {background: #203b58; padding: 10px; border-radius: 8px;}
.call-captions details p {background: #102a45;}
.call-captions summary {font-size: .8rem; cursor: pointer;}


:root {--workspace-accent: #176e85;}
.sidebar {padding: 20px 12px; width: 244px;}
.nav-button {margin: 5px 0; border-radius: 10px; min-height: 47px; padding: 10px 12px; gap: 11px;}
.nav-button.active {background: #e9f2f5; border: 1px solid #b9d7df; color: #123f50;}
.menu-icon {display: inline-grid; place-items: center; width: 30px; height: 30px; border-radius: 9px; background: #eef0f6; color: #5c6487; font-size: 21px; font-weight: 700; flex-shrink: 0;}
.menu-customers .menu-icon,.menu-manufacturers .menu-icon {background: #e6f3eb; color: #39785d;}
.menu-pricing .menu-icon {background: #fff1d8; color: #926519;}
.menu-machines .menu-icon {background: #e8efff; color: #4668a7;}
.menu-service .menu-icon {background: #fbe9e4; color: #a35d48;}
.menu-teams .menu-icon {background: #f2eaff; color: #8055a6;}
.menu-chat .menu-icon {background: #e0f4f5; color: #277b82;}
.menu-profile .menu-icon {background: #edf0f2; color: #58636c;}
.section-tabs {display: flex; flex-wrap: wrap; gap: 7px; border-bottom: 1px solid #dce5e9; margin-bottom: 24px; padding-bottom: 12px;}
.section-tab {background: #f5f8fa; border: 1px solid #dce5e9; padding: 9px 14px; border-radius: 20px; color: #4a5967; cursor: pointer; font: inherit; font-size: 13px;}
.section-tab.active {background: #e4f2f6; border-color: #84baca; color: #174c60; font-weight: 650;}
.searchable-select {position: relative; width: 100%; min-width: 0;}
.combo-native {position: absolute !important; opacity: 0 !important; width: 1px !important; height: 1px !important; padding: 0 !important; pointer-events: none;}
.combo-trigger {display: block; text-align: left; width: 100%; border: 1px solid #d1dce6; border-radius: 8px; padding: 12px 14px; background: #fff; color: #263c50; min-height: 44px; font: inherit; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.combo-trigger:focus-visible,.combo-search:focus-visible {outline: 3px solid #83b6f6; outline-offset: 2px;}
.combo-trigger.invalid {border-color: #b3261e;}
.combo-panel {position: absolute; z-index: 200; top: calc(100% + 5px); left: 0; right: 0; min-width: 180px; background: #fff; padding: 8px; border-radius: 10px; box-shadow: 0 10px 32px #16344830; border: 1px solid #cbdbe4;}
.combo-panel[hidden] {display: none;}
.combo-search {width: 100%; margin-bottom: 7px;}
.combo-options {max-height: 230px; overflow-y: auto; overscroll-behavior: contain;}
.combo-option {display: block; width: 100%; text-align: left; border: 0; background: #fff; padding: 10px; border-radius: 6px; font: inherit; color: #233d50;}
.combo-option[aria-selected=true] {background: #e8f3f7; font-weight: 650;}
.combo-option:hover,.combo-option:focus {background: #f0f5fa; outline: 2px solid #82b4ca; outline-offset: -2px;}
.combo-empty {padding: 10px; color: #687987;}
.searchable-select.is-open {z-index: 210;}
.welcome-tour {position: fixed; right: 28px; bottom: 24px; width: min(390px,calc(calc(var(--triq-stage-width) * 1) - 32px)); z-index: 1001; background: #fff; border: 1px solid #94bdca; border-radius: 16px; box-shadow: 0 18px 60px #173e4838; padding: 26px; color: #223e50;}
.welcome-tour h2 {font-size: 21px; margin: 10px 0;}
.welcome-tour p {line-height: 1.6;}
.tour-close {position: absolute; top: 7px; right: 9px; border: 0; background: none; font-size: 28px; color: #536472; cursor: pointer;}
.tour-highlight {outline: 3px solid #2390ad !important; outline-offset: 3px; background: #def3f6 !important; box-shadow: 0 0 0 7px #2390ad18 !important;}
.customer-dialog {position: fixed; width: min(1060px,calc(var(--triq-stage-width) * 0.95)); max-height: calc(var(--triq-stage-height) * 0.9); overflow: auto; border: 1px solid #c4d7e2; border-radius: 16px; padding: 24px; background: #f7fafc; color: #263c50;}
.customer-dialog::backdrop {background: #152f4966;}
.modal-head {display: flex; justify-content: space-between; align-items: center; gap: 20px; position: sticky; top: -24px; z-index: 250; background: #f7fafc; padding: 16px 0;}
.modal-close {font-size: 26px !important; min-width: 40px;}
.installation-row {border: 1px solid #d3e0e8; border-radius: 12px; padding: 20px; margin: 18px 0; background: #fff;}
.installation-row legend {font-weight: 700; padding: 0 8px;}
.assign-section {width: 100%;}
.assign-section p {font-size: 13px; color: #617489;}
.customer-dialog .card {overflow: visible;}
.customer-dialog .fields {overflow: visible;}
.chat-layout {grid-template-columns: minmax(0,1fr) 270px;}
.chat-main {min-width: 0;}
.chat-main>section:has(#chat-message-list) {background: #f0f5f8; border-radius: 14px;}
.chat-main #chat-message-list {height: calc(var(--triq-stage-height) * 0.48); min-height: 280px; max-height: 650px; overflow: auto; padding: 15px; display: flex; flex-direction: column; gap: 12px; scroll-behavior: smooth; overscroll-behavior: contain;}
.chat-message {max-width: 83%; align-self: flex-start; background: white; border: 1px solid #e1e9ef; border-radius: 14px 14px 14px 3px; padding: 12px 16px; margin: 0; box-shadow: 0 1px 3px #243e5010;}
.chat-message.mine {align-self: flex-end; background: #dff1f4; border-color: #c5e3e9; border-radius: 14px 14px 3px 14px;}
.chat-message-head {font-size: 11px; gap: 5px; color: #5f7381;}
.chat-body {white-space: pre-wrap; margin: 8px 0;}
.chat-message-actions {opacity: .75; flex-wrap: wrap; gap: 3px;}
.chat-message-actions .btn {font-size: 11px; padding: 3px 6px; min-height: 25px;}
.chat-message:hover .chat-message-actions,.chat-message:focus-within .chat-message-actions {opacity: 1;}
#biz-chat-message {border: 1px solid #c4d8e3; border-radius: 14px; padding: 15px; background: #fff;}
#biz-chat-message textarea {min-height: 60px; max-height: 160px;}
.chat-conversations {display: grid; gap: 10px;}
.chat-conversation {display: flex; align-items: center; justify-content: space-between; padding: 18px 22px; border: 1px solid #dce6ec; border-radius: 12px; background: #fff;}
.chat-conversation strong {display: block;}
.chat-conversation p {margin: 5px 0; color: #69808d; font-size: 13px;}
.chat-sidebar>section {border-radius: 12px;}
.chat-tools summary {cursor: pointer; padding: 12px 0; color: #466271;}
.chat-live-status {font-size: 12px; color: #478075;}
.sidebar-note {font-size: 10px;}
.layout .main {min-width: 0;}

@media (prefers-reduced-motion:reduce) {.chat-main #chat-message-list {scroll-behavior: auto;}}
.chat-layout {grid-template-columns: 195px minmax(0,1fr);}
.chat-inbox {grid-column: 1; grid-row: 1/3; background: #fff; border: 1px solid #dce6ec; border-radius: 12px; padding: 12px; align-self: start; position: sticky; top: 14px; max-height: calc(var(--triq-stage-height) * 0.8); overflow: auto;}
.chat-inbox h2 {font-size: 17px; margin: 5px 8px 16px;}
.inbox-item {width: 100%; padding: 13px 10px; display: block; text-align: left; border: 0; border-radius: 8px; background: #fff; color: #264957; margin: 4px 0; font: inherit; cursor: pointer;}
.inbox-item.selected {background: #e1f0f5;}
.inbox-item:hover {background: #f0f6f9;}
.inbox-item strong {display: block; font-size: 13px;}
.inbox-item span {display: block; font-size: 11px; color: #637c8a; margin-top: 5px;}
.chat-main {grid-column: 2;}
.chat-sidebar {grid-column: 2; background: #fff; border: 1px solid #dce6ec; padding: 16px; border-radius: 12px;}
.chat-sidebar>summary {font-weight: 650; color: #466271; cursor: pointer;}
.chat-sidebar[open]>summary {margin-bottom: 18px;}


.testing-banner {margin: 0; padding: 8px 16px; background: #fff3cd; color: #533f03; text-align: center; font-size: 13px;}
.testing-banner a {color: #153c7d;}
.chat-extra-day {max-width: 540px; width: min(100%,540px); margin: 14px auto; padding: 17px 20px; border: 1px solid #b9d9cb; border-radius: 14px; background: #f6fbf8; color: #213d33; box-shadow: 0 3px 12px rgba(26,75,53,.06);}
.chat-extra-day p {margin: 9px 0; line-height: 1.5; overflow-wrap: anywhere;}
.chat-extra-day small {display: block; color: #587469;}
.chat-extra-head {display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px; align-items: center;}
.chat-extra-head span {font-size: 12px; font-weight: 650; color: #25634a; background: #e3f2e9; border-radius: 20px; padding: 5px 10px;}
.chat-extra-day .card {margin: 12px 0 0; padding: 12px; border: 1px solid #d9e9df; box-shadow: none; background: #fff;}
.chat-extra-day .actions {display: flex; flex-wrap: wrap; gap: 8px;}
.chat-extra-day .btn {margin-top: 10px;}
.chat-extra-day input,.chat-extra-day select,.chat-extra-day textarea {max-width: 100%;}
#chat-message-list>.card:has(#biz-chat-extra-day) {max-width: 540px; width: min(100%,540px); margin: 14px auto; background: #f8fbff; border: 1px solid #cbddeb; border-radius: 14px; padding: 16px;}
#chat-message-list>.card:has(#biz-chat-extra-day) h2 {margin: 0 0 10px; font-size: 15px;}
.triq-live-bell {position: relative !important; overflow: visible !important; flex-shrink: 0;}
.triq-live-count {position: absolute; top: -6px; right: -7px; min-width: 19px; height: 19px; padding: 0 4px; border-radius: 999px; display: grid; place-items: center; background: #d93854; color: #fff; font: 700 10px/1 system-ui,sans-serif; box-shadow: 0 1px 4px #0003; pointer-events: none;}
.triq-live-notifications {position: fixed; top: 18px; right: 18px; z-index: 10050; width: min(380px,calc(calc(var(--triq-stage-width) * 1) - 36px)); pointer-events: none;}
.triq-notification-toast {padding: 16px 18px; border: 1px solid rgba(29,78,139,.18); border-left: 4px solid #1672bb; border-radius: 15px; background: rgba(247,252,255,.91); box-shadow: 0 15px 36px rgba(12,48,91,.22); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); color: #172f4e; overflow-wrap: anywhere; pointer-events: auto;}
.triq-notification-toast .triq-notification-kind {display: block; margin-bottom: 6px; color: #1263a1; font: 700 11px/1.3 system-ui,sans-serif; letter-spacing: .045em; text-transform: uppercase;}
.triq-notification-toast strong {display: block; font-size: 15px; line-height: 1.35;}
.triq-notification-toast p {margin: 6px 0 0; font-size: 13px; line-height: 1.45; white-space: pre-line; max-height: 5.8em; overflow: hidden;}

.o-sidebar .o-nav.triq-nav-alert,.sidebar .nav-button.triq-nav-alert,.o-profile-nav .o-nav.triq-nav-alert,.section-tabs .section-tab.triq-nav-alert,.o-wallet-link.triq-nav-alert {position: relative; overflow: visible; padding-right: 30px;}
.o-sidebar .o-nav.triq-nav-alert::after,.sidebar .nav-button.triq-nav-alert::after,.o-profile-nav .o-nav.triq-nav-alert::after,.section-tabs .section-tab.triq-nav-alert::after,.o-wallet-link.triq-nav-alert::after {content: ""; position: absolute; top: 50%; right: 12px; transform: translateY(-50%); width: 9px; height: 9px; border-radius: 50%; background: #df304c; box-shadow: 0 0 0 2px #fff,0 2px 6px #65102055; pointer-events: none;}
.o-wallet-link.triq-nav-alert::after {top: 8px; right: 7px; transform: none;}
.triq-notification-toast {background: rgba(249,252,255,.94); border: 1px solid rgba(72,111,155,.24); border-left: 4px solid var(--accent,#1672bb); border-radius: 14px; padding: 15px 18px; box-shadow: 0 18px 48px rgba(24,53,86,.20); animation: triq-toast-three-seconds 3s ease-in-out both;}
.triq-notification-toast strong {font-weight: 700; letter-spacing: -.01em;}
.triq-notification-toast .triq-notification-kind {letter-spacing: .08em;}
@keyframes triq-toast-three-seconds {0% {opacity: 0; transform: translateY(-7px);} 
10%,82% {opacity: 1; transform: translateY(0);} 
100% {opacity: 0; transform: translateY(-5px);} }
@media (prefers-reduced-motion:reduce) {.triq-notification-toast {animation: none;}}
.notification-row .notification-open {display: block; min-width: 0; width: 100%; border: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: pointer; padding: 0;}
.notification-row .notification-open:hover strong {text-decoration: underline; text-underline-offset: 3px;}
.notification-row .notification-open:focus-visible {outline: 2px solid var(--accent,#1672bb); outline-offset: 5px; border-radius: 4px;}
.business-split>.card {min-width: 0;}
.notification-row {display: grid; grid-template-columns: minmax(0,1fr) max-content; gap: 12px; align-items: start;}
.notification-row>.notification-main {grid-column: 1; min-width: 0; width: 100%; max-width: 100%;}
.notification-row>.notification-actions {grid-column: 2; min-width: 0; display: flex; flex-direction: column; align-items: flex-end; gap: 5px;}

.o-visit-change-request {border: 1px solid #efd1ad; background: #fff9f0; box-shadow: 0 6px 20px rgba(126,78,20,.08);}
.o-visit-change-request h2 {margin: 0 0 8px; color: #754318; font-size: 18px;}
.o-visit-change-request p {margin: 6px 0 12px; overflow-wrap: anywhere; line-height: 1.5;}
#chat-message-list>.chat-system-event {align-self: center; display: flex; align-items: flex-start; gap: 11px; width: min(92%,540px); max-width: 100%; padding: 11px 14px; border: 1px solid #cddbe8; border-radius: 12px; background: #f2f6fb; color: #284760; box-shadow: 0 1px 4px #1d45640d; overflow-wrap: anywhere;}
.chat-system-event .chat-system-mark {display: grid; place-items: center; flex: none; width: 23px; height: 23px; border-radius: 50%; background: #dfeaf6; color: #3b668c; font-size: 11px;}
.chat-system-event>div {min-width: 0;}
.chat-system-event strong {display: block; font-size: 13px; line-height: 1.35;}
.chat-system-event p {margin: 3px 0 4px; white-space: pre-wrap; line-height: 1.45; font-size: 12px;}
.chat-system-event time {display: block; margin-top: 4px; font-size: 11px; color: #61798e;}

.o-top-content.o-company-context {gap: clamp(8px,calc(var(--triq-stage-width) * 0.01),18px);}
.o-company-context .o-page-title {min-width: 120px;}
.o-company-context .o-global-search {width: auto; min-width: 100px; flex: 1 1 150px; margin: 0;}
.o-company-context .o-company-label {display: block; min-width: 0; max-width: 200px; flex: 0 1 auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 6px 10px; border: 1px solid #dce8f5; border-radius: 8px; background: #f4f8fc; color: #183d65; font-size: 11px; font-weight: 650;}




:root {--o-navy: #003783; --o-bg: #f6f6f6; --o-border: #ebebeb; --o-text: #101114; --o-muted: #72757a; --o-sidebar: 208px; --o-header: 66px;}
html[data-portal=oem] {color-scheme: light; background: var(--o-bg);}
html[data-portal=oem] body {font-family: Arial,Helvetica,sans-serif; color: var(--o-text); background: var(--o-bg); font-size: 12px; line-height: 1.45;}
.oem-reference * {box-sizing: border-box;}
.oem-reference button,.oem-reference input,.oem-reference select,.oem-reference textarea {font: inherit;}
.oem-reference button {cursor: pointer;}
.oem-reference button:disabled {cursor: not-allowed;}
.oem-reference :focus-visible {outline: 2px solid #2587ea; outline-offset: 3px;}
.oem-reference [hidden] {display: none !important;}
.o-icon {width: 18px; height: 18px; flex: none; vertical-align: middle;}
.o-topbar {height: var(--o-header); background: #fff; border-bottom: 1px solid var(--o-border); display: flex; position: sticky; top: 0; z-index: 30;}
.o-brand {width: var(--o-sidebar); flex: none; padding: 13px 15px; display: flex; align-items: center; justify-content: space-between; border-right: 1px solid var(--o-border);}
.o-brand img {width: 72px; height: 42px; object-fit: contain; object-position: left;}
.o-top-content {flex: 1; min-width: 0; display: flex; align-items: center; gap: 24px; padding: 10px 16px;}
.o-page-title {font-size: 13px; font-weight: 500; min-width: 170px;}
.o-global-search,.o-search {display: flex; align-items: center; gap: 9px; background: #f7f7f7; border: 1px solid var(--o-border); border-radius: 11px; color: #666; height: 36px; padding: 0 11px;}
.o-global-search {width: 280px; margin: auto;}
.o-global-search input,.o-search input {min-width: 0; width: 100%; padding: 0; background: none; border: 0; outline: 0; box-shadow: none; height: 100%; font-size: 11px;}
.o-search {width: 230px;}
.o-top-actions {display: flex; align-items: center; gap: 18px;}
.o-icon-button {border: 1px solid var(--o-border); background: white; width: 34px; height: 34px; padding: 7px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: inherit;}
.o-wallet-link {display: flex; align-items: center; gap: 8px; border: 1px solid var(--o-border); border-radius: 7px; background: #fff; padding: 8px;}
.o-wallet-link svg {color: #20ad49;}
.o-user {background: none; border: 0; display: flex; align-items: center; gap: 10px; text-align: left; padding: 0; white-space: nowrap;}
.o-user b {display: block; font-size: 11px; font-weight: 600;}
.o-user small {display: block; font-size: 10px; color: var(--o-muted);}
.o-avatar {width: 34px; height: 34px; border-radius: 11px; background: #eff2fd; color: var(--o-navy); font-size: 11px; display: inline-flex; align-items: center; justify-content: center; flex: none;}
.o-user .o-avatar {border-radius: 50%; background: #e9f0f5;}
.o-layout {display: grid; grid-template-columns: var(--o-sidebar) minmax(0,1fr); min-height: calc(calc(var(--triq-stage-height) * 1) - var(--o-header));}
.o-sidebar {padding: 22px 13px 20px; background: #fff; border-right: 1px solid var(--o-border); position: sticky; top: var(--o-header); height: calc(calc(var(--triq-stage-height) * 1) - var(--o-header)); overflow-y: auto; scrollbar-width: thin;}
.o-nav-caption {font-size: 9px; color: #747474; margin: 4px 0 10px;}
.o-nav {display: flex; width: 100%; align-items: center; gap: 9px; border: 0; background: #fff; text-align: left; border-radius: 10px; padding: 9px 8px; min-height: 40px; margin: 0 0 9px; color: #101114; font-size: 11px; font-weight: 500; white-space: nowrap;}
.o-nav-icon {background: var(--tint); color: var(--tone); width: 25px; height: 25px; flex: none; display: grid; place-items: center; border-radius: 50%;}
.o-nav .o-icon {width: 15px; height: 15px;}
.o-nav.selected {background: var(--tone); color: #fff;}
.o-nav.selected .o-nav-icon {background: #fff; color: var(--tone);}
.o-nav:hover:not(.selected) {background: var(--tint);}
.o-nav small {font-size: 6px; margin-left: auto; color: #003783; background: #dce4f1; padding: 3px; border-radius: 3px;}
.o-nav-divider {height: 1px; background: #f1f1f1; margin: 18px 0 24px;}
.o-logout {color: #e34048; margin-top: 16px;}
.navy {--tone: #003783; --tint: #e8edf5;}
.purple {--tone: #9285f5; --tint: #f0edff;}
.cyan {--tone: #40cfe9; --tint: #e9fafd;}
.mint {--tone: #6dbb96; --tint: #eef7f0;}
.coral {--tone: #f5747b; --tint: #fff0f0;}
.teal {--tone: #39a5c0; --tint: #eaf4f7;}
.orange {--tone: #ff981a; --tint: #fff6e9;}
.red {--tone: #e9464b; --tint: #fdecee;}
.green {--tone: #3ac48c; --tint: #eef9f0;}
.lavender {--tone: #747cff; --tint: #eff0ff;}
.olive {--tone: #a0a524; --tint: #f4f5e7;}
.blue {--tone: #2b87ef; --tint: #eaf3ff;}
.o-main {min-width: 0; padding: 14px; background: var(--o-bg); max-width: none; margin: 0;}
.o-main .card {padding: 12px; border: 1px solid var(--o-border); border-radius: 11px; background: #fff; box-shadow: none; margin: 0 0 14px; min-width: 0;}
.o-main h1 {font-size: 17px; margin: 0 0 7px; font-weight: 600;}
.o-main h2 {font-size: 13px; font-weight: 600; margin: 0;}
.o-main h3 {font-size: 11px; margin: 0 0 10px;}
.o-main p {font-size: 11px;}
.o-main .page-heading {margin: 0 0 12px; gap: 12px;}
.o-main .page-heading .eyebrow {display: none;}
.o-main .page-heading p {color: var(--o-muted); margin: 4px 0 0;}
.o-main .btn {min-height: 30px; padding: 6px 11px; font-size: 10px; border-radius: 8px; border: 1px solid #dfe4ea; box-shadow: none; background: #fff; color: var(--o-navy); font-weight: 500;}
.o-main .btn.primary,.oem-reference .btn.primary {background: var(--o-navy); border-color: var(--o-navy); color: #fff;}
.o-main .btn.bright {background: #2d86e8; border-color: #2d86e8;}
.o-main .btn.danger,.oem-reference .btn.danger {color: #fff; background: #e4464b; border-color: #e4464b;}
.o-main .btn.o-outline {border: 1px solid #8299ba; background: white; color: #003783;}
.o-main .btn.o-text-button,.o-main .btn.link {padding: 0; min-height: 0; border: 0; background: none; box-shadow: none; color: #003783; text-align: left; font-size: inherit; line-height: inherit; text-decoration: underline; text-underline-offset: 2px; cursor: pointer;}
.o-main .btn.link {color: #003783;}
.o-main .btn.o-muted-button {background: #bcbcbc; color: white; border: 0;}
.o-panel-head {display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; min-height: 32px;}
.o-controls {display: flex; gap: 9px; align-items: center; flex-wrap: wrap;}
.o-controls select,.o-pagination select {width: auto; min-width: 84px; background: #f7f7f7; border: 1px solid var(--o-border); border-radius: 8px; padding: 7px; font-size: 10px; color: #151515;}
.o-panel-head h2 {white-space: nowrap;}
.o-main .table-scroll {border: 1px solid #eee; border-radius: 9px; overflow: auto;}
.o-main table {width: 100%; border-collapse: collapse; font-size: 10px; color: #202124;}
.o-main th {font-size: 10px; text-transform: none; letter-spacing: 0; color: #111; background: #f7f7f7; font-weight: 500; padding: 14px 10px; border-bottom: 1px solid #eaeaea; white-space: nowrap;}
.o-main td {padding: 14px 10px; border-bottom: 1px solid #efefef; vertical-align: middle;}
.o-main tr:last-child td {border-bottom: 0;}
.o-main tbody tr:nth-child(2n) {background: #f8f8f8;}
.o-main tbody tr:hover {background: #f0f5fc;}
.o-main td strong {font-weight: 600;}
.o-main td small {display: block; color: #747474; font-size: 9px; margin-top: 3px;}
.o-main .o-ticket-table {font-size: 10px; min-width: 900px;}
.o-ticket-table td {height: 66px;}
.o-ticket-table td .btn {font-size: 8px; padding: 5px 7px; min-height: 23px; white-space: nowrap; border-radius: 6px;}
.o-ticket-table td .o-text-button {font-size: 10px; padding: 0; white-space: normal;}
.o-description {display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; max-width: 165px; color: #62646a; font-size: 10px; line-height: 1.2;}
.o-status {display: inline-block; max-width: 130px; color: var(--tone); background: var(--tint); font-size: 8px; padding: 4px 5px; border-radius: 4px; white-space: normal; line-height: 1.25;}
.o-country {display: flex; flex-direction: column; font-size: 15px; line-height: 1.2;}
.o-country small {font-size: 8px; color: #686b70;}
.o-danger {color: #e83d43;}
.o-dashboard-bottom {display: grid; grid-template-columns: 1fr 1fr; gap: 14px;}
.o-dashboard-bottom .card {margin: 0;}
.o-dashboard-bottom td {height: 57px;}
.o-pagination {display: flex; align-items: center; gap: 12px; padding-top: 25px; color: #777; font-size: 10px;}
.o-page {width: 32px; height: 32px; border-radius: 50%; border: 1px solid #eee; background: white;}
.o-page.selected {background: var(--o-navy); color: white; border-color: var(--o-navy);}
.o-pagination label {margin-left: auto; display: flex; align-items: center; gap: 8px;}
.o-main .empty {padding: 45px 18px; text-align: center; color: #7a7e85; background: transparent; font-size: 12px;}
.o-main .notice {padding: 10px 13px; border-radius: 8px; font-size: 11px; line-height: 1.5;}
.o-main .badge {font-size: 9px; padding: 4px 6px; border-radius: 5px;}
.o-main .business-split,.o-main .grid {gap: 14px;}
.o-main .fields {gap: 16px; grid-template-columns: repeat(2,minmax(0,1fr));}
.o-main .field label {font-size: 11px; font-weight: 400; color: #5a5b61; margin-bottom: 5px;}
.o-main .field input,.o-main .field select,.o-main textarea,.o-main .combo-trigger {min-height: 35px; border: 1px solid #e8eaf0; background: #fafbff; border-radius: 8px; padding: 8px 10px; font-size: 11px; color: #292c34; box-shadow: none;}
.o-main .help {font-size: 10px; color: #787e88;}
.o-main .form-footer {margin-top: 15px; padding-top: 12px;}
.o-main .form-footer .help {display: none;}
.o-main .card-head {gap: 10px; margin-bottom: 14px;}
.o-main .detail-list div {padding: 9px 0; border-color: #f1f1f1;}
.o-main .detail-list dt {font-size: 10px; font-weight: 400; color: #777;}
.o-main .detail-list dd {font-size: 11px;}
.o-main .record-ref {font-size: 9px;}
.o-main .business-shortcuts {gap: 12px;}
.o-breadcrumb {display: flex; align-items: center; justify-content: flex-end; gap: 16px; height: 28px; margin: -4px 0 12px; font-size: 10px;}
.o-ticket-header {display: flex; align-items: center; justify-content: space-between; gap: 15px; padding-bottom: 13px; border-bottom: 1px solid #f0f0f0;}
.o-person {display: flex; align-items: center; gap: 10px;}
.o-person strong,.o-person b {font-size: 11px; font-weight: 600;}
.o-person small {display: block; color: #666; font-size: 10px; margin-top: 3px;}
.o-ticket-header .btn {border-radius: 20px; font-size: 9px;}
.o-facts {display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 15px; margin: 0; padding: 16px 0; border-bottom: 1px solid #f1f1f1;}
.o-facts dt {font-size: 10px; font-weight: 400; color: #6b6b6b; margin: 0 0 5px;}
.o-facts dd {font-size: 11px; margin: 0;}
.o-problem {padding: 14px 0; margin: 0; border-bottom: 1px solid #f0f0f0; line-height: 1.5; color: #555;}
.o-problem b {color: #111;}
.o-attachments {padding: 14px 0; border-bottom: 1px solid #f0f0f0;}
.o-attachments>small {display: block; margin-bottom: 8px; color: #777;}
.o-attachments>div {display: flex; gap: 10px; align-items: center;}
.o-main .btn.o-file {border-radius: 8px; padding: 12px 15px; background: #f8f8fb;}
.o-ownership {display: flex; gap: 16px; justify-content: space-between; padding-top: 15px; flex-wrap: wrap;}
.o-ownership>div {display: flex; align-items: center; gap: 9px; min-width: 105px; flex: 1;}
.o-ownership small {display: block; color: #737373; font-size: 10px;}
.o-ownership b {display: block; font-weight: 400; font-size: 11px; margin-top: 3px; overflow-wrap: anywhere;}
.o-tile {width: 35px; height: 35px; display: grid; place-items: center; border-radius: 7px; background: var(--tint); color: var(--tone); flex: none;}
.o-service-options {border: 1px solid var(--o-border); border-radius: 10px; background: #fff; margin: 14px 0; padding: 12px;}
.o-service-options>summary {cursor: pointer; color: #003783; font-size: 11px; padding: 4px;}
.o-service-grid {display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 12px;}
.o-machine-card {border: 1px solid #eee; border-radius: 9px; padding: 12px; margin-bottom: 12px;}
.o-machine-card .o-ticket-header {padding-bottom: 9px;}
.o-machine-specs {display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; padding: 13px 0; border-bottom: 1px solid #f0f0f0;}
.o-machine-specs>div {border-right: 1px solid #eee; padding-right: 12px;}
.o-machine-specs>div:last-child {border: 0;}
.o-machine-specs small {display: block; color: #888; font-size: 9px;}
.o-machine-specs b {display: block; font-weight: 400; font-size: 11px; margin: 3px 0 5px;}
.o-machine-card .o-ownership {padding-top: 10px;}
.o-machine-card .o-tile {width: 28px; height: 28px;}
.o-tabs {display: flex; gap: 10px; margin: 0 0 14px;}
.o-chat-workspace {display: grid; grid-template-columns: 310px minmax(0,1fr); gap: 14px; min-height: calc(calc(var(--triq-stage-height) * 1) - 98px); position: relative;}
.o-chat-list {background: white; border: 1px solid var(--o-border); border-radius: 10px; padding: 12px; height: calc(calc(var(--triq-stage-height) * 1) - 99px); overflow: auto;}
.o-chat-filters {display: flex; gap: 7px; margin-bottom: 12px;}
.o-chat-filters .btn {border: 0; background: #f5f7fb;}
.o-chat-filters .btn.selected {color: #fff; background: #003783;}
.o-inbox-item {width: 100%; display: flex; align-items: center; gap: 10px; background: #fff; border: 0; border-bottom: 1px solid #f2f2f2; padding: 16px 6px; text-align: left; color: #222;}
.o-inbox-item.selected {background: #eaf3ff; border-radius: 9px;}
.o-inbox-item b {font-size: 11px; display: block;}
.o-inbox-item small {display: block; color: #929292; margin-top: 5px; font-size: 10px;}
.o-unread {margin-left: auto; border-radius: 20px; background: #003783; color: #fff; padding: 2px 6px;}
.o-chat-welcome {background: white; border: 1px solid var(--o-border); border-radius: 10px; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 12px;}
.o-chat-room {display: flex; flex-direction: column; background: white; border: 1px solid var(--o-border); border-radius: 10px; overflow: hidden; min-width: 0; height: calc(calc(var(--triq-stage-height) * 1) - 99px); position: relative;}
.o-chat-head {display: flex; justify-content: space-between; align-items: center; gap: 9px; background: #f8f9fe; padding: 11px 14px; min-height: 53px;}
.o-chat-head h2 {font-size: 12px;}
.o-chat-head .o-icon-button {width: 28px; height: 28px; border: 0; background: var(--tint); color: var(--tone);}
.o-chat-head .o-controls {gap: 5px;}
.o-chat-head .btn {font-size: 9px; min-height: 23px; padding: 4px 7px;}
.o-chat-search {padding: 8px 12px;}
.o-chat-search .fields {display: block;}
.o-chat-search .form-footer {margin: 5px 0 0; padding: 0;}
.o-chat-search .form-footer .btn {padding: 4px 8px; min-height: 25px;}
.o-chat-room #chat-live-status {padding: 2px 12px; font-size: 9px; color: #888; min-height: 18px;}
.o-chat-room #chat-message-list {flex: 1; min-height: 0; max-height: none; overflow: auto; padding: 12px; display: flex; flex-direction: column; gap: 18px; background: white; align-items: flex-start;}
.o-chat-room .chat-message {width: auto; max-width: 75%; margin: 0; border: 0; border-radius: 12px; background: #eaf3fc; padding: 10px; color: #202020; font-size: 11px; box-shadow: none; position: relative; flex-shrink: 0;}
.o-chat-room .chat-message.mine {align-self: flex-end; background: #003783; color: white; border-radius: 12px 12px 3px 12px;}
.o-chat-room .chat-message-head {display: flex; flex-wrap: wrap; gap: 4px; border: 0; font-size: 8px; align-items: center; color: #4c7497;}
.o-chat-room .chat-message-head strong {font-size: 9px; color: #003783;}
.o-chat-room .chat-message.mine .chat-message-head {color: #d4e1f7;}
.o-chat-room .chat-message.mine .chat-message-head strong {color: #fff;}
.o-chat-room .chat-body {font-size: 11px; line-height: 1.45; margin: 6px 0; white-space: pre-wrap; overflow-wrap: anywhere;}
.o-chat-room .chat-message>small {display: block; font-size: 8px; opacity: .75; margin-top: 5px;}
.o-chat-room .chat-message-actions {display: flex; flex-wrap: wrap; gap: 3px; margin-top: 6px; max-height: 0; overflow: hidden; opacity: 0; transition: opacity .15s;}
.o-chat-room .chat-message:hover .chat-message-actions,.o-chat-room .chat-message:focus-within .chat-message-actions {opacity: 1; max-height: 150px;}
.o-chat-room .chat-message-actions .btn {padding: 3px 5px; font-size: 9px; min-height: 22px; background: rgba(255,255,255,.95); border: 0;}
.o-chat-room .chat-translation {font-size: 9px; border-color: #c9dcee;}
.o-chat-room .chat-translation p {font-size: 10px;}
.o-composer {padding: 10px; display: flex; align-items: flex-end; gap: 9px; box-shadow: 0 -3px 12px #00000008; border-top: 1px solid #f0f1f5; background: #fff;}
.o-composer #biz-chat-message {flex: 1; display: flex; gap: 8px; align-items: flex-end; flex-wrap: wrap; min-width: 0;}
.o-composer #biz-chat-message .fields {display: contents;}
.o-composer #biz-chat-message .field.full {flex: 1; margin: 0; min-width: 80px;}
.o-composer textarea {min-height: 38px; height: 38px; max-height: 160px; width: 100%; resize: vertical; background: #f8f9fd; border-color: #ecedf3; font-size: 11px;}
.o-composer #biz-chat-message .field:not(.full) {display: none;}
.o-composer .form-footer {margin: 0; padding: 0; border: 0;}
.o-composer .form-footer button {width: 36px; height: 36px; padding: 8px; border-radius: 50%; background: #003783;}
.o-composer .help {display: none;}
.o-composer .form-error:empty,.o-composer .chat-pending:empty {display: none;}
.o-composer .chat-reply-context,.o-composer .chat-pending {width: 100%; order: -1;}
.o-attach-menu {position: relative; align-self: flex-end;}
.o-attach-menu>summary {list-style: none; width: 35px; height: 35px; background: #f0f2fe; border-radius: 50%; display: grid; place-items: center; font-size: 25px; color: #8a8ef0; cursor: pointer;}
.o-attach-popover {position: absolute; bottom: 47px; left: 0; width: 300px; max-height: calc(var(--triq-stage-height) * 0.65); overflow: auto; padding: 13px; border: 1px solid #e6e6ef; background: white; border-radius: 10px; box-shadow: 0 8px 35px #14235025; z-index: 10;}
.o-attach-popover>.chat-tools {border: 0; padding: 0;}
.o-attach-popover .card {border: 0; padding: 6px; margin: 0;}
.o-attach-popover .chat-tools>summary {font-weight: 600; padding: 7px;}
.o-attach-popover .fields {display: block;}
.o-ticket-chat {grid-template-columns: minmax(0,1.1fr) minmax(0,1fr); min-height: calc(calc(var(--triq-stage-height) * 1) - 138px);}
.o-ticket-chat>.o-ticket-detail {height: calc(calc(var(--triq-stage-height) * 1) - 138px); overflow: auto; margin: 0;}
.o-ticket-chat .o-chat-room {height: calc(calc(var(--triq-stage-height) * 1) - 138px);}
.o-ticket-chat .o-facts {grid-template-columns: repeat(3,minmax(0,1fr));}
.o-ticket-chat .o-ticket-header {align-items: flex-start;}
.o-ticket-chat .o-ticket-header .o-controls {justify-content: flex-end; gap: 5px;}
.o-ticket-chat .o-ticket-header .btn {font-size: 8px; padding: 5px 7px;}
.o-ticket-chat .o-ownership {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px 8px;}
.o-ticket-chat .o-ownership>div {min-width: 0;}
.o-group-panel {position: absolute; right: 0; top: 54px; background: white; z-index: 12; border: 1px solid #eee; border-radius: 10px; box-shadow: 0 10px 40px #14235020; width: 340px; max-height: calc(calc(var(--triq-stage-height) * 1) - 185px); overflow: auto;}
.o-group-panel:not([open]) {display: none;}
.o-group-panel>summary {padding: 16px; cursor: pointer; font-size: 14px; font-weight: 600; border-bottom: 1px solid #eee;}
.o-group-panel .card {margin: 0; border: 0; border-radius: 0; border-bottom: 1px solid #eee;}
.o-group-panel .fields {grid-template-columns: 1fr;}
.o-group-panel>.btn {margin: 12px;}
.o-group-panel .card p {font-size: 11px;}
.o-feedback {display: grid; grid-template-columns: 220px 1fr 100px 95px; gap: 20px; align-items: center; padding: 16px 10px; border-bottom: 1px solid #eee;}
.o-feedback:last-child {border-bottom: 0;}
.o-stars {color: #ffb12e; letter-spacing: 3px; font-size: 17px;}
.o-profile-layout {display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 14px; min-height: calc(calc(var(--triq-stage-height) * 1) - 100px);}
.o-profile-nav {padding: 9px; background: #fff; border: 1px solid var(--o-border); border-radius: 10px;}
.o-profile-nav .o-nav {padding: 10px 7px; border-bottom: 1px solid #f4f4f4; margin: 0 0 6px; border-radius: 7px;}
.o-profile-content {padding: 10px; background: #fff; border: 1px solid var(--o-border); border-radius: 10px; min-width: 0;}
.o-profile-content>.card {box-shadow: none;}
.o-wallet-cards {display: grid; grid-template-columns: repeat(auto-fit,minmax(200px,1fr)); gap: 12px;}
.o-balance {display: block; font-size: 30px; margin: 12px 0; color: #003783;}
.o-wallet-cards .o-facts {grid-template-columns: repeat(3,1fr);}
.o-logout-dialog {border: 0; box-shadow: 0 15px 70px #0003; border-radius: 12px; text-align: center; padding: 25px 35px; width: 360px; max-width: calc(var(--triq-stage-width) * 0.9); color: #181b20;}
.o-logout-dialog::backdrop,.customer-dialog::backdrop {background: #18243b55;}
.o-logout-dialog .o-tile {margin: 0 auto; width: 50px; height: 50px; border-radius: 50%;}
.o-logout-dialog h2 {font-size: 18px; margin: 12px 0;}
.o-logout-dialog p {font-size: 12px; color: #666;}
.o-logout-dialog .o-controls {justify-content: center; margin-top: 20px;}
.o-logout-dialog .btn {font-size: 12px; padding: 9px 18px; border-radius: 8px;}
.oem-reference .customer-dialog {border-radius: 12px; border: 1px solid #eee; max-width: min(850px,calc(var(--triq-stage-width) * 0.95));}
.oem-reference .triq-call-panel {background: #f5f7fa; color: #111; border: 1px solid #e6e8ed; border-radius: 12px; box-shadow: 0 20px 80px #18223833;}
.oem-reference .call-videos {background: #192631; border-radius: 10px; overflow: hidden; min-height: 240px;}
.oem-reference .call-videos video {border-radius: 8px; object-fit: cover;}
.oem-reference .call-controls button {border-radius: 30px; min-height: 38px;}
.oem-reference .call-controls .danger {background: #e33c4b; color: white;}
.o-nav-collapsed {--o-sidebar: 72px;}
.o-nav-collapsed .o-brand {padding: 14px 18px;}
.o-nav-collapsed .o-brand img {display: none;}
.o-nav-collapsed .o-sidebar {padding: 22px 14px;}
.o-nav-collapsed .o-nav {padding: 8px 7px; justify-content: center;}
.o-nav-collapsed .o-nav-label,.o-nav-collapsed .o-nav>small,.o-nav-collapsed .o-nav-caption {display: none;}
.o-nav-collapsed .o-nav-divider {margin: 20px 0;}
.o-main {padding: 18px;}
.o-ticket-table td {height: 75px;}
.o-sidebar .o-nav {margin-bottom: 14px;}



@media (prefers-reduced-motion:reduce) {.oem-reference * {transition: none !important; scroll-behavior: auto !important;}}
.o-attachment-choices {display: grid; gap: 3px;}
.o-main .o-attachment-choices .btn {display: block; text-align: left; padding: 10px 8px; font-size: 12px; border-radius: 7px;}
.o-main .o-attachment-choices .btn:hover {background: #eef2fc;}
.oem-reference .o-progress-dialog {width: 430px; text-align: left;}
.o-progress-dialog h2 {text-align: center;}
.o-progress-dialog .fields {display: block;}
.o-progress-dialog .field {margin: 12px 0;}
.o-progress-dialog input,.o-progress-dialog textarea {width: 100%; border: 1px solid #e4e7ef; border-radius: 8px; background: #f8f9fc; padding: 10px;}
.o-progress-dialog .field label {display: block; margin-bottom: 5px; font-size: 11px; color: #666;}
.o-progress-dialog .btn.primary {background: #23ad48; border-color: #23ad48; color: #fff;}
.o-logout-dialog .form-error:empty {display: none;}

.oem-reference .o-visit-dialog {width: min(720px,calc(var(--triq-stage-width) * 0.94)); max-width: calc(var(--triq-stage-width) * 0.94); max-height: calc(var(--triq-stage-height) * 0.9); overflow: auto; padding: 0 22px 22px; border: 1px solid #d5deef; border-radius: 14px; background: #f8faff; color: #172b46; box-shadow: 0 20px 75px #12275044;}
.oem-reference .o-visit-dialog::backdrop {background: #1727428c;}
.o-visit-dialog-head {position: sticky; top: 0; z-index: 2; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 17px 0 12px; background: #f8faff; border-bottom: 1px solid #dfe5ef;}
.o-visit-dialog-head h2 {margin: 0; font-size: 17px; color: #003783;}
.o-ticket-table tr.o-overdue-ticket > td:first-child {box-shadow: inset 3px 0 #d9303e;}
.o-ticket-table .o-overdue-time {color: #b42332; font-weight: 650;}
.o-ticket-layout {display: grid; grid-template-columns: minmax(0,1fr) minmax(220px,24%); gap: 14px; align-items: start; min-width: 0;}
.o-ticket-main {min-width: 0;}
.o-ticket-history {min-width: 0; position: sticky; top: calc(var(--o-header) + 14px); max-height: calc(calc(var(--triq-stage-height) * 1) - var(--o-header) - 28px); overflow: auto;}
.o-ticket-history .card {margin: 0;}
.o-ticket-history .timeline {max-width: 100%;}
.o-service-grid>.o-visit-overview {grid-column: 1/-1;}
.o-visit-overview .detail-list {display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 9px;}
.o-visit-overview .detail-list>div {display: block; min-width: 0; min-height: 55px; padding: 8px 10px; border: 1px solid #e4eaf3; border-radius: 7px; background: #f8fbff;}
.o-visit-overview .detail-list dt {margin-bottom: 5px;}
.o-visit-overview .detail-list dd {font-weight: 600; color: #263b55; line-height: 1.35;}


.o-visit-dialog>.card {margin: 14px 0 0; box-shadow: none; border: 0; background: #fff; padding: 16px; border-radius: 10px;}
.o-visit-dialog .fields {grid-template-columns: repeat(2,minmax(0,1fr));}
.o-visit-dialog .field.full {grid-column: 1/-1;}
.o-visit-dialog .form-footer {display: flex; align-items: center; gap: 12px; flex-wrap: wrap;}

.o-main .btn.o-extra-payment,.business-split .btn.o-extra-payment {background: #087f78; border-color: #087f78; color: #fff; font-weight: 650; white-space: normal;}
.o-main .btn.o-extra-payment:hover,.business-split .btn.o-extra-payment:hover {background: #066961; border-color: #066961; color: #fff;}
.o-extra-day-dialog {width: min(520px,calc(var(--triq-stage-width) * 0.94)); max-height: calc(var(--triq-stage-height) * 0.9); overflow: auto; border: 1px solid #c9dcd9; border-radius: 14px; padding: 24px; background: #fff; color: #193332; box-shadow: 0 20px 70px #14302d40;}
.o-extra-day-dialog::backdrop {background: #17333180;}
.o-extra-day-head {display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; border-bottom: 1px solid #dceae7; padding-bottom: 12px;}
.o-extra-day-head h2 {margin: 0; font-size: 17px; line-height: 1.3;}
.o-extra-day-dialog p {font-size: 12px; line-height: 1.5; color: #50635e;}
.o-extra-day-dialog .fields {display: grid; grid-template-columns: 1fr; gap: 12px; margin: 16px 0;}
.o-extra-day-dialog .field label {display: block; font-size: 12px; margin-bottom: 5px;}
.o-extra-day-dialog input,.o-extra-day-dialog textarea {box-sizing: border-box; width: 100%; min-height: 38px; border: 1px solid #cfdbd7; border-radius: 8px; padding: 9px 11px; background: #f8fbfa; color: #193332;}
.o-extra-day-dialog textarea {min-height: 85px; resize: vertical;}
.o-extra-day-dialog .help {display: block; font-size: 10px; color: #5f746c; margin-top: 4px;}
.o-extra-day-dialog .o-controls {display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; margin-top: 16px;}
.o-extra-day-dialog .btn {border: 1px solid #b9d2c9; border-radius: 8px; padding: 8px 12px; background: #fff; color: #19554e;}
.o-extra-day-dialog .btn.primary {background: #087f78; border-color: #087f78; color: #fff;}
.o-extra-day-dialog .form-error:empty {display: none;}
.o-machine-tone-0 {--machine-accent: #2d6ab5; --machine-surface: #f0f6ff; --machine-stroke: #b5cff0;}
.o-machine-tone-1 {--machine-accent: #147d72; --machine-surface: #edf9f6; --machine-stroke: #a5ded4;}
.o-machine-tone-2 {--machine-accent: #aa6914; --machine-surface: #fff7ea; --machine-stroke: #efd0a5;}
.o-machine-tone-3 {--machine-accent: #6854a7; --machine-surface: #f6f2ff; --machine-stroke: #cdbff1;}
.o-machine-tone-4 {--machine-accent: #aa526d; --machine-surface: #fff1f5; --machine-stroke: #f0bdd0;}
.o-machine-tone-5 {--machine-accent: #427748; --machine-surface: #f1f9ed; --machine-stroke: #bfdbb8;}
.o-machine-card[class*="o-machine-tone-"] {background: var(--machine-surface); border: 1px solid var(--machine-stroke); border-left: 5px solid var(--machine-accent);}
.o-machine-card[class*="o-machine-tone-"] .o-ticket-header,.o-machine-card[class*="o-machine-tone-"] .o-machine-specs {border-bottom-color: var(--machine-stroke);}
.o-machine-card[class*="o-machine-tone-"] .o-tile {background: var(--machine-stroke); color: var(--machine-accent);}
.o-top-content.o-company-context {gap: clamp(8px,calc(var(--triq-stage-width) * 0.01),18px);}
.o-company-context .o-page-title {min-width: 120px;}
.o-company-context .o-global-search {width: auto; min-width: 100px; flex: 1 1 150px; margin: 0;}
.o-company-context .o-company-label {display: block; min-width: 0; max-width: 200px; flex: 0 1 auto; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 6px 10px; border: 1px solid #dce8f5; border-radius: 8px; background: #f4f8fc; color: #183d65; font-size: 11px; font-weight: 650;}




html[data-portal="oem"] {font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; --o-navy: #073b83; --o-blue: #277de1; --o-bg: #f7f9fc; --o-border: #e5eaf1; --o-text: #17243a; --o-muted: #64748b; --o-sidebar: 206px; --o-header: 66px;}
html[data-portal="oem"] body {font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 13px; line-height: 1.48; letter-spacing: -.005em; color: var(--o-text); background: var(--o-bg);}
html[data-portal="oem"] input,
html[data-portal="oem"] button,
html[data-portal="oem"] select,
html[data-portal="oem"] textarea {font-family: inherit;}
.oem-reference .o-topbar {box-shadow: 0 1px 2px #17335408;}
.oem-reference .o-brand {padding: 10px 14px;}
.oem-reference .o-brand img {width: 92px; height: 42px;}
.oem-reference .o-top-content {padding-inline: 20px;}
.oem-reference .o-page-title {font-size: 13px; font-weight: 600; min-width: 165px;}
.oem-reference .o-global-search {max-width: 300px; width: min(300px, calc(var(--triq-stage-width) * 0.27));}
.oem-reference .o-global-search,
.oem-reference .o-search {min-height: 36px; height: 36px; background: #f8fafc; border: 1px solid #e3e8ef; border-radius: 9px; transition: background .15s, border-color .15s, box-shadow .15s;}
.oem-reference .o-global-search:focus-within,
.oem-reference .o-search:focus-within {background: white; border-color: #6fa7f0; box-shadow: 0 0 0 3px #277de11c;}
.oem-reference .o-global-search input,
.oem-reference .o-search input {font-size: 11.5px; color: var(--o-text);}
.oem-reference .o-icon-button {transition: background .15s, border-color .15s;}
.oem-reference .o-icon-button:hover {border-color: #b8cbe4; background: #f2f6fc;}
.oem-reference .o-wallet-link {height: 36px; padding: 7px 10px; color: #12365b;}
.oem-reference .o-wallet-link:hover {border-color: #b8cbe4; background: #f7faff;}
.oem-reference .o-user b {font-size: 11px;}
.oem-reference .o-user small {font-size: 9.5px;}
.oem-reference .o-sidebar {padding: 12px 12px 10px; scrollbar-width: none; overscroll-behavior: contain;}
.oem-reference .o-sidebar::-webkit-scrollbar {display: none;}
.oem-reference .o-sidebar nav {display: block;}
.oem-reference .o-nav-caption {font-size: 9px; line-height: 12px; margin: 4px 0 8px 3px; color: #778396;}
.oem-reference .o-sidebar .o-nav {min-height: clamp(30px, calc(var(--triq-stage-height) * 0.04), 36px); margin-bottom: clamp(2px, .45vh, 5px); padding: 5px 8px; gap: 9px; font-size: 11px; font-weight: 550; border-radius: 9px;}
.oem-reference .o-sidebar .o-nav-icon {width: 23px; height: 23px;}
.oem-reference .o-sidebar .o-nav .o-icon {width: 14px; height: 14px;}
.oem-reference .o-sidebar .o-nav-divider {margin: 11px 0 13px; height: 1px;}
.oem-reference .o-sidebar .o-logout {margin-top: 4px;}
.oem-reference .o-sidebar .o-nav:hover:not(.selected) {background: var(--tint); color: var(--tone);}
.oem-reference .o-sidebar .o-nav.selected {font-weight: 650; box-shadow: inset 0 0 0 1px #ffffff22;}
.oem-reference .o-main {padding: 17px 18px 24px;}
.oem-reference .o-main .card {padding: 16px; border: 1px solid var(--o-border); border-radius: 12px; box-shadow: 0 2px 9px #17335407; margin-bottom: 14px;}
.oem-reference .o-main h1 {font-size: 20px; font-weight: 650; line-height: 1.25;}
.oem-reference .o-main h2 {font-size: 14px; font-weight: 650; line-height: 1.35;}
.oem-reference .o-main h3 {font-size: 12px; font-weight: 650;}
.oem-reference .o-main .page-heading {align-items: center; margin-bottom: 14px;}
.oem-reference .o-main .page-heading .actions {display: flex; align-items: center; gap: 8px; flex-wrap: wrap;}
.oem-reference .o-main .page-heading p {font-size: 11.5px; margin-top: 4px;}
.oem-reference .o-main .o-panel-head {display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; min-height: 36px; margin: 0 0 13px;}
.oem-reference .o-main .o-panel-head h2 {min-width: 0; white-space: normal;}
.oem-reference .o-main .o-panel-head .o-controls {display: flex; flex-flow: row nowrap; align-items: center; justify-content: flex-end; gap: 8px; min-width: 0;}
.oem-reference .o-main .o-search {width: 220px; min-width: 145px; flex: 0 1 220px;}
.oem-reference .o-main .o-panel-head select,
.oem-reference .o-main .o-pagination select {display: inline-block; width: 146px; height: 36px; min-height: 36px; padding: 6px 29px 6px 10px; flex: 0 0 auto; border: 1px solid #dfe5ee; border-radius: 9px; background: #fafbfe; color: #24334a; font-size: 11px; line-height: normal; cursor: pointer;}
.oem-reference .o-main select:hover {border-color: #a8bdd8;}
.oem-reference .o-main select:focus-visible {outline: 0; border-color: #5b98eb; box-shadow: 0 0 0 3px #277de11f;}
.oem-reference .o-main .o-pagination select {width: 75px;}
.oem-reference .o-main .field select {display: block; width: 100%; min-height: 37px; border: 1px solid #dfe5ee; border-radius: 9px; background: #fff; color: #1f314b; padding: 7px 9px; font-size: 12px; cursor: pointer;}
.oem-reference .o-main .field input,
.oem-reference .o-main .field textarea {border: 1px solid #dfe5ee; background: #fff; color: #1f314b; border-radius: 9px; font-size: 12px;}
.oem-reference .o-main .field input:focus,
.oem-reference .o-main .field textarea:focus {outline: 0; border-color: #5b98eb; box-shadow: 0 0 0 3px #277de11f;}
.oem-reference .o-main .field label {font-size: 11px; font-weight: 550; color: #536277;}
.oem-reference .o-main .fields {gap: 13px 17px;}
.oem-reference .o-main .btn {display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 36px; padding: 7px 12px; white-space: nowrap; border-radius: 8px; font-size: 11px; line-height: 1.2; font-weight: 600; transition: background .15s, border-color .15s, box-shadow .15s;}
.oem-reference .o-main .btn:hover:not(:disabled) {border-color: #a3bedf; background: #f5f8fe;}
.oem-reference .o-main .btn.primary:hover:not(:disabled) {background: #062e68; border-color: #062e68;}
.oem-reference .o-main .btn.o-text-button,
.oem-reference .o-main .btn.link {display: inline; min-height: 0; padding: 0; text-align: left; white-space: normal; font-size: inherit; font-weight: 600; line-height: inherit;}
.oem-reference .o-main .btn.o-text-button:hover {background: none; color: var(--o-blue);}
.oem-reference .o-main .btn.o-muted-button {background: #aeb5be; border-color: #aeb5be; color: white;}
.oem-reference .o-main .btn.o-muted-button:disabled {opacity: .82;}
.oem-reference .o-main table {font-size: 11px; line-height: 1.45;}
.oem-reference .o-main th {padding: 11px 10px; font-size: 10.5px; font-weight: 650; color: #33445d; background: #f9fafc;}
.oem-reference .o-main td {padding: 11px 10px;}
.oem-reference .o-main tbody tr:nth-child(2n) {background: #fafbfd;}
.oem-reference .o-main tbody tr:hover {background: #f0f6ff;}
.oem-reference .o-main .o-ticket-table tbody tr[data-action="biz-ticket-open"] {cursor: pointer;}
.oem-reference .o-main .o-ticket-table {font-size: 10.5px;}
.oem-reference .o-main .o-ticket-table td {height: 54px;}
.oem-reference .o-main .o-ticket-table td .btn:not(.o-text-button) {min-height: 25px; padding: 5px 8px; font-size: 9px;}
.oem-reference .o-main .o-description {max-width: 205px; font-size: 10.5px; color: #526075;}
.oem-reference .o-main .o-status {display: inline-block; padding: 4px 7px; font-size: 9px; font-weight: 600; white-space: nowrap; border-radius: 5px;}
.oem-reference .o-main .o-country {align-items: flex-start; font-size: 10px; line-height: 1.3;}
.oem-reference .o-main .o-country strong {font-size: 11px; font-weight: 600;}
.oem-reference .o-main .o-country small {margin-top: 2px; color: #8190a3; font-size: 9px;}
.oem-reference .o-main .o-pagination {padding-top: 16px; gap: 8px;}
.oem-reference .o-main .o-dashboard-bottom {gap: 14px;}
.oem-reference .o-main .o-dashboard-bottom .card {margin: 0;}
.oem-reference .o-main .o-dashboard-bottom td {height: 44px;}
.oem-reference .o-main .o-breadcrumb {margin: -4px 0 8px;}
.oem-reference .o-main .o-ticket-header {gap: 12px;}
.oem-reference .o-main .o-ticket-header .btn {min-height: 29px; font-size: 10px;}
.oem-reference .o-main .o-machine-card {background: #fff; border-radius: 10px; border-color: #e5eaf1; padding: 14px;}
.oem-reference .o-main .o-machine-card:hover {border-color: #c9d7e9;}
.oem-reference .o-main .o-machine-specs {gap: 12px;}
.oem-reference .o-main .o-machine-card .o-ownership small {font-size: 10px;}
.oem-reference .o-main .o-machine-card .o-ownership b {font-size: 11px;}
.oem-reference .o-main .o-profile-nav {padding: 12px;}
.oem-reference .o-main .o-profile-nav .o-nav {font-size: 11px; min-height: 38px;}
.oem-reference .o-main .form-footer {display: flex; align-items: center; justify-content: flex-end; gap: 9px;}
.oem-reference .o-main .form-footer .btn {min-width: 115px;}
.oem-reference .o-main .empty {padding: 27px 18px; font-size: 11px;}
.oem-reference .o-main .notice {font-size: 11px;}
.oem-reference .o-main .o-feedback {gap: 16px;}
.oem-reference .o-main .o-chat-room .chat-message {font-size: 11px; line-height: 1.5;}
.oem-reference .o-main .o-chat-room #chat-message-list {scroll-behavior: smooth;}
.oem-reference .o-main .o-chat-room .chat-message-actions .btn {min-height: 22px; padding: 3px 5px;}
.oem-reference .o-main .o-composer .form-footer button {min-width: 36px; min-height: 36px; padding: 8px;}
.oem-reference .o-main .o-attach-menu > summary {outline-offset: 3px;}




@media (prefers-reduced-motion: reduce) {.oem-reference .o-main *, .oem-reference .o-sidebar * {transition: none; scroll-behavior: auto;}}
.chat-message.role-oem,.o-chat-room .chat-message.role-oem {background: #e7f2ff; border-color: #b8d5fa; color: #173b67;}
.chat-message.role-processor,.o-chat-room .chat-message.role-processor {background: #e6f5e9; border-color: #b8dfc3; color: #174a32;}
.chat-message.role-employee,.o-chat-room .chat-message.role-employee {background: #fff0e1; border-color: #f3cfaa; color: #713b17;}
.chat-message.role-other,.o-chat-room .chat-message.role-other {background: #f1f3f7; border-color: #d9e0e9; color: #33445d;}
.chat-message.role-oem .chat-message-head,.chat-message.role-oem .chat-message-head strong,.chat-message.role-oem small {color: #173b67;}
.chat-message.role-processor .chat-message-head,.chat-message.role-processor .chat-message-head strong,.chat-message.role-processor small {color: #174a32;}
.chat-message.role-employee .chat-message-head,.chat-message.role-employee .chat-message-head strong,.chat-message.role-employee small {color: #713b17;}
.chat-message.role-other .chat-message-head,.chat-message.role-other .chat-message-head strong,.chat-message.role-other small {color: #33445d;}
.chat-message .chat-message-actions .btn {background: #fff; color: #243d56; border: 1px solid #ccdae7;}
.o-chat-room,.o-composer,.o-composer #biz-chat-message {min-width: 0;}
.o-composer {display: grid; grid-template-columns: 40px minmax(0,1fr); align-items: end; gap: 8px; padding: 10px 12px;}
.o-composer .o-attach-menu {width: 40px; min-width: 40px; align-self: end; margin: 0;}
.o-composer .o-attach-menu>summary {width: 40px; height: 40px; line-height: 1;}
.o-composer #biz-chat-message {box-sizing: border-box; display: grid; grid-template-columns: minmax(0,1fr) 40px; align-items: end; column-gap: 8px; width: 100%; padding: 7px 9px; flex: none;}
.o-composer #biz-chat-message .fields {display: contents;}
.o-composer #biz-chat-message .field.full {grid-column: 1; min-width: 0; margin: 0;}
.o-composer #biz-chat-message textarea {box-sizing: border-box; width: 100%; min-height: 44px; height: 44px; max-height: 160px; margin: 0;}
.o-composer #biz-chat-message .form-footer {grid-column: 2; align-self: end; margin: 0; padding: 0;}
.o-composer #biz-chat-message .form-footer button {width: 40px; height: 40px; min-width: 40px; min-height: 40px; margin: 0;}
.o-composer #biz-chat-message .chat-pending,.o-composer #biz-chat-message .chat-reply-context {grid-column: 1/-1; order: -1; width: 100%; min-width: 0;}
.o-composer .o-attach-popover {box-sizing: border-box; width: min(320px,calc(calc(var(--triq-stage-width) * 1) - 52px)); max-width: calc(calc(var(--triq-stage-width) * 1) - 52px); padding: 12px; overflow-x: hidden; overflow-y: auto;}
.o-attach-popover * {box-sizing: border-box; min-width: 0;}
.o-attach-popover #biz-chat-upload,.o-attach-popover #biz-chat-upload .fields,.o-attach-popover #biz-chat-upload input[type=file],.o-attach-popover .card {width: 100%; max-width: 100%;}
.o-attach-popover #biz-chat-upload input[type=file] {overflow: hidden; text-overflow: ellipsis;}
.o-main .o-attachment-choices,.processor-reference .o-main .o-attachment-choices {display: grid; grid-template-columns: 1fr; gap: 3px; padding: 0;}
.o-main .o-attachment-choices .btn {display: flex; align-items: center; gap: 10px; width: 100%; min-height: 44px; text-align: left; padding: 6px 8px;}
.o-attachment-icon {display: grid; place-items: center; flex: none; width: 32px; height: 32px; border-radius: 9px; background: #e7f2ff; color: #225da3;}
.o-attachment-choices .btn:nth-child(2) .o-attachment-icon {background: #e6f5e9; color: #247248;}
.o-attachment-choices .btn:nth-child(3) .o-attachment-icon {background: #fff0e1; color: #a65a20;}
.o-attachment-choices .btn:nth-child(4) .o-attachment-icon {background: #f1eafa; color: #714ab1;}
.o-attachment-icon .o-icon {width: 18px; height: 18px;}
.chat-attachment-menu {min-width: 0; max-width: 100%; overflow-x: hidden;}
.chat-attachment-choices {display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin: 10px 0;}
.chat-attachment-choice {display: flex; align-items: center; gap: 7px; min-width: 0; max-width: 100%; text-align: left;}
.chat-attachment-choice svg {width: 20px; height: 20px; flex: none; color: #295d98;}
.chat-attachment-choice:nth-child(2) svg {color: #247248;}
.chat-attachment-choice:nth-child(3) svg {color: #a65a20;}
.chat-attachment-choice:nth-child(4) svg {color: #714ab1;}
.chat-attachment-menu #biz-chat-upload,.chat-attachment-menu #biz-chat-upload input[type=file] {min-width: 0; max-width: 100%;}
.chat-attachment-menu #biz-chat-upload input[type=file] {width: 100%;}

.o-main .btn.on-hold,.o-main .btn.on-hold:disabled {background: #e8ebef; border: 1px solid #c9d0da; color: #596473; opacity: 1; box-shadow: none;}
.o-main .btn.on-hold:not(:disabled):hover {background: #dce2e8; color: #344253;}
.o-chat-paused {margin: 0; padding: 16px; border-top: 1px solid #e6eaf0; background: #f6f7f9; color: #596473;}
.o-progress-dialog #biz-ticket-hold {display: grid; gap: 11px;}
.o-progress-dialog #biz-ticket-hold textarea {min-height: 95px; width: 100%; box-sizing: border-box;}
.o-hold-context {margin: 14px 0; padding: 13px 16px; border: 1px solid #f0d69d; border-radius: 10px; background: #fff8e9; color: #664722;}
.o-hold-context strong {display: block; margin-bottom: 5px;}
.o-hold-context p {margin: 4px 0; overflow-wrap: anywhere;}
.o-hold-context .o-hold-reply {margin-top: 10px; padding: 10px; border-radius: 7px; background: #eaf7ed; color: #1a5439;}
.o-progress-dialog #biz-ticket-hold-reply {display: grid; gap: 11px;}
.o-progress-dialog #biz-ticket-hold-reply textarea {min-height: 95px; width: 100%; box-sizing: border-box;}
.o-chat-room .chat-inline-images,.chat-inline-images {display: grid; gap: 8px; max-width: min(100%,420px); margin: 8px 0;}
.o-chat-room .chat-inline-image,.chat-inline-image {display: block; width: 100%; max-width: 380px; min-height: 46px; margin: 0; padding: 0; border: 1px solid #c8d4e1; border-radius: 12px; background: #fff; color: #243d56; text-align: left; overflow: hidden; cursor: zoom-in;}
.chat-inline-image img:not([src]) {display: none;}
.chat-inline-image img[src] {display: block; width: auto; height: auto; max-width: 100%; max-height: 340px; margin: auto; object-fit: contain;}
.chat-inline-image .chat-image-status {display: block; padding: 12px 14px; font-size: 13px;}
.chat-inline-image:focus-visible {outline: 3px solid #2f6bb5; outline-offset: 2px;}
.chat-attachments:empty {display: none;}
.o-chat-room .chat-message.role-oem {--triq-chat-heading: #173b67;}
.o-chat-room .chat-message.role-processor {--triq-chat-heading: #174a32;}
.o-chat-room .chat-message.role-employee {--triq-chat-heading: #713b17;}
.o-chat-room .chat-message.role-other {--triq-chat-heading: #33445d;}
.o-chat-room .chat-message .chat-message-head,.o-chat-room .chat-message .chat-message-head * {color: var(--triq-chat-heading,#33445d) !important; opacity: 1 !important; text-shadow: none;}
.o-chat-room .o-attach-popover .o-attachment-choices .btn {display: flex !important; flex-direction: row !important; align-items: center; justify-content: flex-start; gap: 10px; width: 100%; min-height: 44px; padding: 6px 8px; text-align: left; white-space: normal;}
.o-chat-room .o-attach-popover #biz-chat-upload[hidden] {display: none !important;}
.o-chat-room .o-attach-popover #biz-chat-upload:not([hidden]) {display: block; width: 100%; min-width: 0; margin: 8px 0 0; padding: 0; box-sizing: border-box;}
.o-chat-room .o-attach-popover #biz-chat-upload input[type=file] {display: block; width: 100%; min-height: 46px; padding: 6px; border: 1px solid #c8d4e1; border-radius: 9px; background: #fff; color: #243d56; font: inherit; cursor: pointer;}
.o-chat-room .o-attach-popover #biz-chat-upload input[type=file]::file-selector-button {margin-right: 10px; padding: 7px 10px; border: 1px solid #b6cce3; border-radius: 7px; background: #e8f2fc; color: #19456d; font: inherit; font-weight: 700; cursor: pointer;}
.o-chat-room .o-attach-popover #biz-chat-upload .form-footer {display: block; width: 100%; margin: 10px 0 0; padding: 0;}
.o-chat-room .o-attach-popover #biz-chat-upload .form-footer button {display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 100%; max-width: 100%; min-height: 40px; height: auto; margin: 0; padding: 8px 12px; white-space: normal; text-align: center;}
.chat-receipt-line {display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin-top: 8px; font-size: 12px; color: #475569;}
.chat-receipt-link {border: 0; background: none; padding: 3px 2px; color: #1764ca; font: inherit; font-weight: 700; text-decoration: underline; text-underline-offset: 2px; cursor: pointer;}
.chat-receipt-link:hover {color: #104891;}
.chat-receipt-link:focus-visible,.chat-receipt-close:focus-visible {outline: 3px solid #1764ca; outline-offset: 3px;}
.chat-main {position: relative;}
.chat-receipts-popover {position: absolute; z-index: 35; box-sizing: border-box; width: min(330px,calc(100% - 16px)); max-height: min(290px,calc(100% - 16px)); margin: 0; padding: 0; border: 1px solid #ccd8e7; border-radius: 11px; background: #fff; color: #243349; box-shadow: 0 12px 32px rgba(21,44,78,.22); overflow: auto;}
.chat-receipt-heading {display: flex; align-items: center; justify-content: space-between; padding: 8px 10px; border-bottom: 1px solid #e3e9f2; background: #f6f8fb;}
.chat-receipt-heading h2 {margin: 0; color: #243349; font-size: 14px; line-height: 1.4;}
.chat-receipt-close {display: grid; place-items: center; width: 26px; height: 26px; border: 1px solid #d1deec; border-radius: 7px; background: #fff; color: #243349; font-size: 18px; cursor: pointer;}
.chat-receipt-grid {display: grid; grid-template-columns: repeat(2,minmax(0,1fr));}
.chat-receipt-grid section {min-width: 0; padding: 10px 9px 12px;}
.chat-receipt-grid section+section {border-left: 1px solid #e3e9f2;}
.chat-receipt-grid h3 {margin: 0 0 9px; color: #1c2c43; font-size: 12px; font-weight: 700;}
.chat-receipt-people {display: grid; gap: 7px; list-style: none; margin: 0; padding: 0;}
.chat-receipt-people li {display: flex; align-items: center; gap: 10px; min-width: 0;}
.chat-receipt-avatar {display: grid; place-items: center; flex: none; width: 26px; height: 26px; border-radius: 50%; background: #e8f2ff; color: #194f91; font-size: 13px; font-weight: 700;}
.chat-receipt-people strong,.chat-receipt-people small {display: block; overflow-wrap: anywhere; line-height: 1.35;}
.chat-receipt-people strong {color: #243349; font-size: 13px;}
.chat-receipt-people small {color: #536379; font-size: 11px;}
.chat-receipt-empty {margin: 0; color: #637388; font-size: 13px;}

:root[data-portal="oem"] {--triq-hold-glow: rgba(48,129,236,.58);}
:root[data-portal="processor"] {--triq-hold-glow: rgba(29,167,105,.58);}
:root[data-portal="employee"] {--triq-hold-glow: rgba(237,137,49,.6);}
.oem-reference .o-main .btn.o-hold-attention:not(:disabled) {animation: triq-hold-attention 3s ease-in-out infinite; position: relative;}
@keyframes triq-hold-attention {0%,100% {box-shadow: 0 0 0 0 transparent; filter: brightness(1);} 
50% {box-shadow: 0 0 0 4px var(--triq-hold-glow),0 0 18px 5px var(--triq-hold-glow); filter: brightness(1.14);} }
@media (prefers-reduced-motion:reduce) {.oem-reference .o-main .btn.o-hold-attention:not(:disabled) {animation: none; outline: 2px solid var(--triq-hold-glow); outline-offset: 2px;}}
.onboarding-countries {display: grid; gap: 7px; min-width: 0; margin: 6px 0 12px; padding: 14px; border: 1px solid var(--line); border-radius: 11px; background: var(--tint);}
.onboarding-countries [data-country-controls] {display: grid; gap: 8px;}
.onboarding-countries [data-country-controls][hidden],.onboarding-countries [hidden] {display: none !important;}
.onboarding-countries select[data-country-list] {display: block; width: 100%; height: 185px; padding: 6px; background: #fff; overflow-y: auto;}
.onboarding-countries select[data-country-list] option {padding: 4px 7px;}
.onboarding-countries [data-add-country] {justify-self: start;}
.onboarding-countries [data-country-selected-field] {min-width: 0; background: #fff; color: #233a57; cursor: default;}
.onboarding-country-chips {display: flex; flex-wrap: wrap; gap: 6px;}
.onboarding-chip {border: 1px solid var(--line); border-radius: 999px; background: #fff; color: #33445f; padding: 5px 9px; font-size: 12px; cursor: pointer;}
.onboarding-chip:hover,.onboarding-chip:focus-visible {border-color: var(--accent); outline-color: var(--accent);}
.onboarding-countries output {font-size: 12px; font-weight: 700; color: var(--accent);}
.onboarding-global-message {margin: 0; color: #31435b; font-size: 12px;}
.onboarding-field-label {display: flex; align-items: baseline; gap: 5px 9px; flex-wrap: wrap;}
.onboarding-field-label>label {flex-shrink: 0;}
.onboarding-field-hint,.onboarding-permission-hint {font-size: 11px; font-weight: 400; line-height: 1.45; color: #58687f;}
.onboarding-field-hint {min-width: 0;}
.onboarding-permission {display: grid; grid-template-columns: 18px minmax(0,1fr); gap: 8px; align-items: start; padding: 5px 3px; font-size: 12px;}
.onboarding-permission>input[type=checkbox] {margin: 5px 0 0;}
.onboarding-permission>input[type=hidden]+label {grid-column: 2;}
.onboarding-permission>label {display: flex; align-items: baseline; gap: 3px 8px; flex-wrap: wrap; font-size: 12px; font-weight: 500; cursor: pointer; line-height: 1.45; min-width: 0;}
.onboarding-permission-name {flex-shrink: 0;}
.onboarding-permission-hint {min-width: 0;}

.simple-access-grid {display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin: 16px 0;}
.simple-access-option {display: flex !important; align-items: flex-start; gap: 10px; padding: 14px; border: 1px solid #dce5ef; border-radius: 10px; background: #fff; cursor: pointer; min-width: 0;}
.simple-access-option input[type=checkbox] {width: 18px; height: 18px; flex: 0 0 18px; margin: 3px 0 0;}
.simple-access-option>span {display: flex; flex-direction: column; gap: 5px; min-width: 0;}
.simple-access-option strong {font-size: 14px; color: #17324d;}
.simple-access-option small {font-size: 12px; line-height: 1.5; color: #5a6c80;}
.simple-access-option [data-access-state] {color: #1457a6; font-weight: 600;}
.simple-access-option:has(input:checked),.simple-access-option:has(input:indeterminate) {border-color: #7cb8d5; background: #f3faff;}
.advanced-permissions {border-top: 1px solid #dce5ef; margin-top: 12px; padding-top: 14px;}
.advanced-permissions summary {cursor: pointer; color: #1457a6; font-weight: 600;}
.simple-access-body[hidden] {display: none !important;}
.simple-access-option input:focus-visible {outline: 2px solid #1457a6; outline-offset: 3px;}

.oem-reference .o-main {padding: 14px 16px 20px;}
.oem-reference .o-main .card {padding: 13px 14px; margin-bottom: 12px;}
.oem-reference .o-main .o-panel-head {margin-bottom: 10px; min-height: 32px;}
.oem-reference .o-main .o-ticket-table td {height: 46px; padding-block: 9px;}
.oem-reference .o-main .o-ticket-table th {padding-block: 9px;}
.oem-reference .o-main .o-pagination {padding-top: 12px;}
.oem-reference .o-main .o-dashboard-bottom {gap: 12px;}
.oem-reference .o-main .o-dashboard-bottom td {height: 40px; padding-block: 8px;}
.oem-reference .o-main .o-ticket-layout {grid-template-columns: minmax(0, 1fr) minmax(230px, 27%); gap: 12px; overflow: visible;}
.oem-reference .o-main .o-ticket-history {top: calc(var(--o-header) + 12px);}
.oem-reference .o-main .o-ticket-history > .card + .card {margin-top: 12px;}
.oem-reference .o-main .o-ticket-main > .card {margin-bottom: 12px;}
.oem-reference .o-main .o-ticket-evidence {border-color: #dce6ef;}
.oem-reference .o-main .o-ticket-attachments h2 {font-size: 13px; margin: 0 0 10px;}
.oem-reference .o-main .o-ticket-file-list {display: grid; gap: 8px;}
.oem-reference .o-main .o-ticket-file {display: flex; align-items: center; gap: 9px; padding: 8px 10px; border: 1px solid #e2e9f1; border-radius: 8px; background: #f8fafc; min-width: 0;}
.oem-reference .o-main .o-ticket-file .o-tile {width: 28px; height: 28px; flex: none;}
.oem-reference .o-main .o-ticket-file-name {flex: 1; min-width: 0; overflow-wrap: anywhere; font-size: 11px;}
.oem-reference .o-main .o-ticket-file .btn {flex: none; min-height: 28px; padding: 5px 9px;}
.oem-reference .o-main .o-ticket-file-share {border-top: 1px solid #e7edf4; padding-top: 12px; margin-top: 12px;}
.oem-reference .o-main .o-ticket-file-share > .card {padding: 0; margin: 0; border: 0; background: transparent; box-shadow: none;}
.oem-reference .o-main .o-ticket-file-share > .card > h2 {font-size: 12px;}
.oem-reference .o-main .o-ticket-file-share .fields {grid-template-columns: minmax(0, 1fr); margin-top: 9px;}
.oem-reference .o-main .o-ticket-file-share .form-footer {margin-top: 10px; padding-top: 10px;}
.oem-reference .o-main .o-ticket-chat .o-ticket-attachments {margin-top: 12px; padding-top: 12px; border-top: 1px solid #e5eaf1;}
.oem-reference .o-main .o-service-options > summary {padding: 12px 14px;}
.oem-reference .o-main .o-service-grid {gap: 12px;}
.oem-reference .o-main .o-service-grid > .card {margin: 0;}
.oem-reference .o-main .o-ticket-main .field {min-width: 0;}
.oem-reference .o-main .o-machine-specs {grid-template-columns: repeat(4, minmax(0, 1fr));}
.oem-reference .o-main .o-machine-specs > div {min-width: 0;}
.oem-reference .o-main .o-machine-specs b {overflow-wrap: anywhere;}
.oem-reference .o-main .o-ticket-main .o-facts > div,
.oem-reference .o-main .o-ticket-main .o-ownership > div {min-width: 0;}
.oem-reference .o-main .o-ticket-main .o-facts dd,
.oem-reference .o-main .o-ticket-main .o-ownership b {overflow-wrap: anywhere;}
.oem-reference .o-main .o-ticket-file-list > .muted {margin: 0;}



.oem-reference .o-main .o-dashboard-bottom > .card {min-width: 0;}
.oem-reference .o-main .o-task-table {min-width: 0; max-width: 100%;}
.oem-reference .o-main .o-task-table .table-scroll {max-width: 100%; overflow-x: auto;}
.oem-reference .o-main .o-task-table table {min-width: 600px; table-layout: auto;}
.oem-reference .o-main .o-task-table th,
.oem-reference .o-main .o-task-table td {min-width: 100px; overflow-wrap: normal; word-break: normal;}
.oem-reference .o-main .o-task-table th:first-child,
.oem-reference .o-main .o-task-table td:first-child {min-width: 240px;}
html:has(.triq-portal-header) {--o-header: 72px;}
body .triq-portal-header[data-header-portal] {--triq-header-border: #e5ebf3; position: sticky; top: 0; z-index: 35; display: flex; align-items: stretch; width: 100%; height: 72px; min-height: 72px; background: #fff; border-bottom: 1px solid var(--triq-header-border); color: #172d48; box-sizing: border-box;}
body .triq-portal-header[data-header-portal] .o-brand {width: var(--o-sidebar,206px); min-width: 0; flex: 0 0 var(--o-sidebar,206px); display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 9px 14px; border-right: 1px solid var(--triq-header-border); box-sizing: border-box;}
body .triq-portal-header[data-header-portal] .o-brand img {display: block; width: 112px; height: 46px; max-width: calc(100% - 36px); object-fit: contain; object-position: left center; flex: 0 0 auto; min-width: 0;}
body .triq-portal-header[data-header-portal] .o-top-content {display: flex; flex: 1 1 auto; min-width: 0; align-items: center; padding: 10px 18px; gap: 0; margin: 0;}
body .triq-portal-header[data-header-portal] .triq-header-row {display: grid; grid-template-columns: minmax(0,1fr) 280px minmax(0,1fr); align-items: center; gap: 16px; width: 100%; min-width: 0; margin: 0;}
body .triq-portal-header[data-header-portal] .o-page-title {grid-column: 1; grid-row: 1; justify-self: start; font-size: 13px; font-weight: 650; min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
body .triq-portal-header[data-header-portal] .o-global-search {grid-column: 2; grid-row: 1; display: flex; align-items: center; gap: 8px; margin: 0; width: 100%; min-width: 0; height: 34px; border: 1px solid var(--triq-header-border); background: #f7f9fc; border-radius: 9px; padding: 0 10px; box-sizing: border-box; color: #64748b;}
body .triq-portal-header[data-header-portal] .o-global-search input {font: inherit; font-size: 11px; width: 100%; min-width: 0; height: 100%; margin: 0; padding: 0; box-shadow: none; border: 0; border-radius: 0; background: transparent; color: #172d48; outline-offset: 4px;}
body .triq-portal-header[data-header-portal] .triq-header-spacer {grid-column: 2; grid-row: 1;}
body .triq-portal-header[data-header-portal] .triq-header-right {grid-column: 3; grid-row: 1; display: flex; flex-direction: row; align-items: center; justify-content: flex-end; gap: 10px; min-width: 0;}
body .triq-portal-header[data-header-portal] .o-company-label {display: block; flex: 0 1 auto; min-width: 0; max-width: 165px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 6px 8px; border: 1px solid #d7e7fb; border-radius: 7px; background: #f4f8fd; color: #244b7c; font-size: 10px; font-weight: 600; line-height: 1.3;}
body .triq-portal-header[data-header-portal] .o-top-actions {display: flex; flex: 0 0 auto; align-items: center; justify-content: flex-end; gap: 8px; min-width: 0; margin: 0;}
body .triq-portal-header[data-header-portal] .o-icon {width: 17px; height: 17px; flex: 0 0 auto; vertical-align: middle;}
body .triq-portal-header[data-header-portal] .o-icon-button {display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; min-height: 32px; flex: 0 0 auto; padding: 6px; background: #fff; border: 1px solid var(--triq-header-border); border-radius: 50%; color: #172d48; box-sizing: border-box;}
body .triq-portal-header[data-header-portal] .o-wallet-link {display: inline-flex; align-items: center; gap: 6px; position: relative; flex: 0 0 auto; min-height: 32px; padding: 6px 10px; border: 1px solid var(--triq-header-border); border-radius: 7px; background: #fff; color: #172d48; font-size: 11px; line-height: 1.2; box-sizing: border-box;}
body .triq-portal-header[data-header-portal] .o-wallet-link svg {color: #22a34c;}
body .o-wallet-link.triq-nav-alert {position: relative; overflow: visible; padding-right: 22px !important;}
body .o-wallet-link.triq-nav-alert::after {content: ""; position: absolute; top: 5px; right: 5px; bottom: auto; left: auto; transform: none; width: 8px; height: 8px; border-radius: 50%; background: #df304c; box-shadow: 0 0 0 2px #fff; pointer-events: none;}
html[dir="rtl"] body .o-wallet-link.triq-nav-alert {padding-right: 10px !important; padding-left: 22px !important;}
html[dir="rtl"] body .o-wallet-link.triq-nav-alert::after {right: auto; left: 5px;}
body .triq-portal-header[data-header-portal] .o-user {display: flex; align-items: center; gap: 7px; flex: 0 0 auto; min-width: 0; padding: 0; border: 0; background: none; text-align: left; color: inherit; white-space: nowrap;}
body .triq-portal-header[data-header-portal] .o-avatar {display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; background: #eaf1f7; color: #244b7c; font-size: 10px; flex: 0 0 auto;}
body .triq-portal-header[data-header-portal] .o-user>span:nth-child(2) {display: block; min-width: 0; max-width: 124px; overflow: hidden;}
body .triq-portal-header[data-header-portal] .o-user b,body .triq-portal-header[data-header-portal] .o-user small {display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
body .triq-portal-header[data-header-portal] .o-user b {font-size: 10px; font-weight: 600; line-height: 1.4;}
body .triq-portal-header[data-header-portal] .o-user small {font-size: 9px; color: #718198; line-height: 1.4;}
body .triq-portal-header[data-header-portal] [data-triq-language] {max-width: 84px !important; min-width: 0; font-size: 11px !important;}
body .triq-portal-header[data-header-portal] .o-top-actions>.searchable-select {width: 84px; max-width: 84px; flex: 0 0 84px; min-width: 0;}
body .triq-portal-header[data-header-portal] .o-top-actions>.searchable-select .combo-trigger {height: 32px; min-height: 32px; padding: 5px 8px; font-size: 11px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
body .triq-portal-header[data-header-portal] .o-top-actions>.searchable-select .combo-panel {left: auto; right: 0; max-width: min(260px,calc(calc(var(--triq-stage-width) * 1) - 24px));}
body .triq-portal-header[data-header-portal] .triq-user-menu {position: relative; flex: 0 0 auto;}
body .triq-portal-header[data-header-portal] .triq-user-menu summary {display: flex; align-items: center; justify-content: center; list-style: none; width: 22px; height: 32px; cursor: pointer; border-radius: 6px; color: #64748b;}
body .triq-portal-header[data-header-portal] .triq-user-menu summary::-webkit-details-marker {display: none;}
body .triq-portal-header[data-header-portal] .triq-user-panel {position: absolute; right: 0; top: calc(100% + 10px); width: 155px; padding: 6px; border: 1px solid var(--triq-header-border); border-radius: 9px; box-shadow: 0 10px 30px #172d481f; background: #fff; z-index: 40;}
body .triq-portal-header[data-header-portal] .triq-user-panel button {display: block; width: 100%; padding: 9px; border: 0; border-radius: 5px; background: none; text-align: left; font-size: 11px; color: inherit; cursor: pointer;}
body .triq-portal-header[data-header-portal] .triq-user-panel button:hover {background: #f1f6fc;}
body .triq-auth-header .brand img {display: block; width: 112px; height: 46px; object-fit: contain; object-position: left center;}
body.o-nav-collapsed .triq-portal-header .o-brand {width: 72px; flex-basis: 72px; flex-direction: column; justify-content: center; gap: 2px; padding: 4px 7px;}
body.o-nav-collapsed .triq-portal-header .o-brand img {width: 54px; height: 29px; max-width: 100%; object-position: center;}
body.o-nav-collapsed .triq-portal-header .triq-collapse {width: 23px; height: 23px; min-height: 23px; padding: 3px;}
body .triq-portal-header[data-header-portal] .triq-header-row {grid-template-columns: minmax(0,1fr) 220px minmax(0,1fr); gap: 12px;}
body .triq-portal-header[data-header-portal] .triq-header-right {flex-direction: column; align-items: flex-end; gap: 5px;}
body .triq-portal-header[data-header-portal] .o-company-label {max-width: 180px; padding: 3px 7px;}
body .triq-portal-header[data-header-portal] .o-user>span:nth-child(2) {max-width: 100px;}



body .triq-portal-header[data-header-portal] .triq-header-row {grid-template-columns: minmax(80px,1fr) minmax(250px,480px) auto; gap: 16px;}
body .triq-portal-header[data-header-portal] .triq-search-company {grid-column: 2; grid-row: 1; display: flex; align-items: center; gap: 10px; min-width: 0; width: 100%;}
body .triq-portal-header[data-header-portal] .triq-search-company .o-global-search {flex: 1 1 280px; max-width: 280px; min-width: 0; display: flex;}
body .triq-portal-header[data-header-portal] .triq-search-company .triq-header-spacer {display: none;}
body .triq-portal-header[data-header-portal] .triq-search-company .o-company-label {display: block; flex: 0 1 180px; max-width: 180px; min-width: 0; margin: 0; justify-self: start; padding: 6px 8px;}
body .triq-portal-header[data-header-portal] .triq-header-right {grid-column: 3; grid-row: 1; flex-direction: row; align-items: center; justify-content: flex-end; gap: 0;}


dialog.welcome-tour {position: fixed; inset: auto; top: 50%; left: 50%; right: auto; bottom: auto; transform: translate(-50%,-50%); margin: 0; box-sizing: border-box; width: min(460px,calc(calc(var(--triq-stage-width) * 1) - 32px)); max-height: calc(calc(var(--triq-stage-height) * 1) - 32px); overflow: auto; overscroll-behavior: contain; padding: 28px; border: 1px solid #a4bdcb; border-radius: 16px; color: #223e50; background: #fff; box-shadow: 0 22px 80px #173e4840;}
dialog.welcome-tour:not([open]) {display: none;}
dialog.welcome-tour::backdrop {background: #1837462b;}
.welcome-tour .tour-close {width: 36px; height: 36px; top: 8px; right: 8px; line-height: 1;}
.welcome-tour .tour-error:empty {display: none;}
.welcome-tour .tour-next {min-width: 104px;}
.welcome-tour .tour-highlight {position: relative;}
.welcome-tour button:focus-visible,.triq-message-close:focus-visible {outline: 3px solid #438bc2; outline-offset: 3px;}
[data-portal-message] {display: none !important;}
[data-portal-message]+.stack-gap:empty {display: none;}
.triq-message-stack,.triq-centered-messages,.triq-live-notifications {--triq-message-left-gap: max(16px,env(safe-area-inset-left,0px)); --triq-message-right-gap: max(16px,env(safe-area-inset-right,0px)); --triq-message-top-gap: max(16px,env(safe-area-inset-top,0px)); --triq-message-bottom-gap: max(16px,env(safe-area-inset-bottom,0px)); position: fixed; inset: auto; top: auto; left: auto; right: var(--triq-message-right-gap); bottom: var(--triq-message-bottom-gap); transform: none; margin: 0; z-index: 10060; width: min(440px,calc(calc(var(--triq-stage-width) * 1) - var(--triq-message-left-gap) - var(--triq-message-right-gap))); max-width: calc(100% - var(--triq-message-left-gap) - var(--triq-message-right-gap)); box-sizing: border-box; pointer-events: none;}
.triq-message-stack {display: grid; gap: 12px; max-height: calc(calc(var(--triq-stage-height) * 1) - var(--triq-message-top-gap) - var(--triq-message-bottom-gap)); overflow: auto; overscroll-behavior: contain;}
.triq-live-notifications {display: grid; gap: 12px;}
.triq-message-stack>.triq-centered-messages,.triq-message-stack>.triq-live-notifications {position: static; transform: none; width: 100%; max-width: 100%; flex: none;}
.triq-centered-messages:empty,.triq-live-notifications:empty {display: none;}
.triq-live-notifications:not(:has(.triq-notification-toast:not([hidden]))) {display: none;}
.triq-centered-message,.triq-live-notifications .triq-notification-toast {position: relative; box-sizing: border-box; pointer-events: auto; min-width: 0; max-width: 100%; max-height: calc(calc(var(--triq-stage-height) * 1) - var(--triq-message-top-gap) - var(--triq-message-bottom-gap)); overflow: auto; overscroll-behavior: contain; overflow-wrap: anywhere; padding: 22px 48px 22px 22px; border: 1px solid #b6cadc; border-left: 4px solid #2376ae; border-radius: 14px; background: #f9fcff; color: #17374e; box-shadow: 0 22px 70px #18354d33;}
.triq-centered-message[data-kind="success"] {background: #f1fbf6; border-color: #acd5bf; border-left-color: #218054;}
.triq-centered-message p {margin: 0; font-size: 14px; line-height: 1.6; white-space: pre-line;}
.triq-message-close {position: absolute; top: 8px; right: 8px; width: 32px; height: 32px; border: 0; border-radius: 7px; background: transparent; color: #486172; font: 400 25px/1 system-ui,sans-serif; cursor: pointer;}
.triq-message-close:hover {background: #dceaf1;}
.triq-live-notifications .triq-notification-toast {animation: none; backdrop-filter: none; -webkit-backdrop-filter: none;}
.triq-live-notifications .triq-notification-toast p {max-height: none; overflow: visible;}
.triq-live-notifications .triq-notification-toast[hidden] {display: none;}

@media (prefers-reduced-motion:reduce) {.triq-centered-message,.triq-live-notifications .triq-notification-toast {animation: none;}}
.sandbox-banner {position: relative; z-index: 10000; padding: 7px 14px; background: #222b54; color: #fff; text-align: center; font: 600 12px/1.4 Arial,sans-serif; letter-spacing: .02em;}
.sandbox-login-help {margin-top: 16px; padding: 14px; border: 1px solid #d3dff0; border-radius: 10px; background: #f3f7fc; overflow-wrap: anywhere;}
.sandbox-login-help p {margin: 0 0 10px;}
.sandbox-login-help strong {display: block; margin-bottom: 4px;}
.triq-password-field {position: relative; width: 100%; min-width: 0;}
.triq-password-field>input {display: block; width: 100%; min-width: 0; padding-right: 48px !important; box-sizing: border-box;}
.triq-password-toggle {position: absolute; right: 3px; top: 50%; transform: translateY(-50%); display: grid; place-items: center; width: 40px; height: 40px; min-height: 0; padding: 0; border: 0; border-radius: 6px; background: transparent; color: #173e6d; cursor: pointer;}
.triq-password-toggle:hover {background: #e8eff9;}
.triq-password-toggle:focus-visible {outline: 2px solid #1967d2; outline-offset: -2px;}
.triq-password-toggle:disabled {opacity: .55; cursor: default;}
.triq-password-field>input::-ms-reveal {display: none;}
/* Keep the reference desktop arrangement at every viewport width. */
html{scrollbar-gutter:auto;--triq-fit-scale:1;--triq-stage-width:1600px;--triq-stage-height:900px}
/* Reserve the same width in browsers without stable scrollbar gutters. */

html[data-triq-layout="desktop-fit"] body{zoom:var(--triq-fit-scale);width:var(--triq-stage-width);min-width:var(--triq-stage-width);max-width:var(--triq-stage-width);margin:0;min-height:var(--triq-stage-height)}
body #app{width:100%;min-width:0;max-width:100%}
body #app :is(.o-main,.triq-admin-main,.main,.card,.o-panel,.o-controls,.fields,.field,.business-split,.grid,.table-scroll){min-width:0;max-width:100%;box-sizing:border-box}
body #app :is(.o-ticket-layout,.p-ticket-shell,.e-ticket-layout){display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,28%);min-width:0;gap:16px;align-items:start}
body #app :is(.p-ticket-scroll,.o-ticket-history,.e-ticket-history,.p-ticket-controls){height:auto;max-height:none;overflow:visible;position:static;min-width:0}
body #app :is(.o-ticket-main,.p-ticket-main,.e-ticket-main){min-width:0}
body #app :is(.o-facts,.p-record-grid){display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;min-width:0}
body #app .o-ownership{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;min-width:0}
body #app .o-ownership>div{min-width:0;align-items:flex-start}
body #app .o-ownership :is(b,small){display:block;overflow-wrap:anywhere}
body #app :is(.o-panel-head,.o-ticket-header,.o-controls){display:flex;align-items:center;flex-wrap:nowrap;gap:10px}
body #app .o-ticket-header .o-controls{justify-content:flex-end;flex:0 1 auto}
body #app .o-ticket-header .o-person{min-width:0;flex:1 1 150px}
body #app .o-controls>*{min-width:0;max-width:100%}
body #app .o-controls :is(button,.btn){white-space:nowrap;flex-shrink:0}
body #app .triq-portal-header[data-header-portal]{height:72px;min-height:72px}
body #app .triq-portal-header[data-header-portal] .triq-header-row{grid-template-columns:minmax(80px,1fr) minmax(250px,480px) auto;grid-template-rows:auto;gap:16px}
body #app .triq-portal-header[data-header-portal] .triq-search-company{grid-column:2;grid-row:1}
body #app .triq-portal-header[data-header-portal] .triq-header-right{grid-column:3;grid-row:1;flex-direction:row}
body #app :is(.o-main,.triq-admin-main) table{display:table;width:100%;min-width:0;table-layout:fixed;border-collapse:collapse}
body #app :is(.o-main,.triq-admin-main) thead{display:table-header-group;position:static;width:auto;height:auto;clip-path:none;overflow:visible}
body #app :is(.o-main,.triq-admin-main) tbody{display:table-row-group}
body #app :is(.o-main,.triq-admin-main) tr{display:table-row}
body #app :is(.o-main,.triq-admin-main) :is(th,td){display:table-cell;min-width:0;max-width:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;padding:12px 8px}
body #app :is(.o-main,.triq-admin-main) td::before{content:none}
body #app :is(.o-main,.triq-admin-main) tr[hidden]{display:none!important}
body #app :is(.o-main,.triq-admin-main) :is(th,td) :is(.p-description,.e-truncate){display:block;min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:1}
body #app table :is(.btn,button,.o-status,.badge){max-width:100%;white-space:nowrap}
body #app table[data-ticket-columns] :is(th,td):nth-child(1){width:9%}
body #app table[data-ticket-columns] :is(th,td):nth-child(2){width:8%}
body #app table[data-ticket-columns] :is(th,td):nth-child(3){width:13%}
body #app table[data-ticket-columns] :is(th,td):nth-child(4){width:9%}
body #app table[data-ticket-columns] :is(th,td):nth-child(5){width:14%}
body #app table[data-ticket-columns] :is(th,td):nth-child(6){width:7%}
body #app table[data-ticket-columns] :is(th,td):nth-child(7){width:5%}
body #app table[data-ticket-columns] :is(th,td):nth-child(8){width:9%}
body #app table[data-ticket-columns] :is(th,td):nth-child(9){width:16%}
body #app table[data-ticket-columns] :is(th,td):nth-child(10){width:10%}
.ticket-payment-summary h2{margin:0 0 12px}
.ticket-payment-summary .payment-breakdown{margin:0;max-width:100%}
.ticket-payment-summary .payment-breakdown>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:9px 0;border-bottom:1px solid #eef1f5}
.ticket-payment-summary .payment-breakdown dd{margin:0;white-space:nowrap;font-weight:600}
.ticket-payment-summary .total{font-weight:700;border-top:1px solid #dce5ef}
@media print{html[data-triq-layout="desktop-fit"] body{zoom:1;width:auto;min-width:0;max-width:none}}

/* Keep the compact desktop arrangement while aligning the composer controls. */
body #app .o-composer{display:flex;align-items:flex-start;gap:8px;padding:10px}
body #app .o-composer>.o-attach-menu{flex:0 0 40px;margin:6px 0 0;align-self:flex-start}
body #app .o-attach-menu>summary{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:40px;height:40px;padding:0;line-height:1;font-size:28px;list-style:none;border-radius:50%}
body #app .o-attach-menu>summary::-webkit-details-marker{display:none}
body #app .o-composer>#biz-chat-message{flex:1;min-width:0;margin:0}
body #app .o-composer textarea{resize:none;min-height:44px}
body #app .chat-heading-info{appearance:none;border:0;background:transparent;color:inherit;text-align:left;padding:0;font:inherit;cursor:pointer}
body #app .chat-heading-info small{display:block;font-size:11px;font-weight:400;margin-top:4px;color:#64748b}
body #app #chat-upload-progress{grid-column:1/-1;display:flex;align-items:center;gap:8px;padding:8px 0;font-size:12px;flex-wrap:wrap}
body #app #chat-upload-progress progress{width:120px;max-width:100%;accent-color:#078478}
body #app .chat-pending{display:flex;flex-wrap:wrap;gap:8px}
body #app .chat-group-overview{text-align:left;padding:16px}
body #app .chat-group-hero{text-align:center;padding:14px 0}
body #app .chat-group-avatar{display:grid;place-items:center;margin:0 auto 12px;width:72px;height:72px;border-radius:50%;background:#e5f5f1;color:#078478;font-size:28px;font-weight:bold}
body #app .chat-group-hero h3{overflow-wrap:anywhere;margin:0 0 8px}
body #app [data-group-member]{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #edf1f5}
body #app [data-group-member][hidden]{display:none}
body #app [data-group-member] .group-member-name{flex:1;min-width:0;overflow-wrap:anywhere}
body #app [data-group-member] small{display:block;color:#64748b}
body #app .chat-group-files{max-height:200px;overflow:auto}
body #app .chat-group-files .btn{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;margin:6px 0}
body #app .phone-code-select{margin-bottom:6px;width:100%}
body #app .o-company-label{max-width:310px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body #app .o-nav[aria-disabled="true"]{cursor:default;opacity:.65}
body #app .o-nav[aria-disabled="true"] small{font-size:9px;margin-left:auto;white-space:nowrap}

body:has(#biz-chat-message) .triq-message-stack{bottom:max(150px,calc(150px * var(--triq-fit-scale,1)))}
.chat-create-panels{max-width:100%;text-align:left}.chat-create-panels summary{cursor:pointer;font-weight:650;padding:10px 0}.chat-create-panels fieldset{max-height:190px;overflow:auto;border:1px solid #d8e0ea;border-radius:8px}.chat-create-panels .check{display:flex;gap:8px;align-items:center;padding:5px}.chat-group-overview .chat-group-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}

/* Keep message actions reachable by mouse, keyboard and touch without hover expansion. */
.o-chat-room .chat-message-actions{max-height:none;overflow:visible;opacity:1;min-height:0}.o-chat-room .chat-message-actions .btn{position:relative;z-index:1}

/* Refund evidence needs readable references and timestamps, outside summary cells. */
.wallet-payment-detail{margin-top:16px;padding:14px;border:1px solid #dfe8f2;border-radius:8px;min-width:0}
.wallet-payment-detail h4{margin:0 0 8px;font-size:13px;overflow-wrap:anywhere}
.wallet-payment-detail .wallet-refund-history,.wallet-payment-detail .wallet-refund-policy{margin-top:8px;white-space:normal}
body #app :is(.o-main,.triq-admin-main) :is(.wallet-payment-detail,.finance-refund-records) :is(th,td){white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;vertical-align:top}
.wallet-payment-detail .record-ref,.wallet-payment-detail p{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}

/* Show the file limit inside the compact chat attachment menu. */
.o-chat-room .o-attach-popover .chat-upload-limit{display:block!important;margin:8px 4px 2px;font-size:12px;line-height:1.4;color:#425b74}

/* Preserve submitted issue text, including Unicode line breaks. */
.o-problem {white-space: pre-wrap; overflow-wrap: anywhere;}
