:root,
html.autoris-theme-light,
body.autoris-theme-light {
    --autoris-bg: #F5F7FC;
    --autoris-bg-soft: #E3EAFB;
    --autoris-surface: #ffffff;
    --autoris-surface-soft: #E3EAFB;
    --autoris-surface-elevated: #ffffff;
    --autoris-text: #172033;
    --autoris-text-muted: #64748b;
    --autoris-muted: #64748b;
    --autoris-border: rgba(0, 0, 0, 0.06);
    --autoris-border-soft: rgba(0, 0, 0, 0.04);
    --autoris-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-shadow-hover: 0 8px 22px rgba(0, 0, 0, 0.16);
    --autoris-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.08);
    --theme-primary: #1B3AA0;
    --theme-secondary: #3556B6;
    --theme-tertiary: #5874C6;
    --theme-light: #E3EAFB;
    --theme-link: #4868D3;
    --autoris-primary: #1B3AA0;
    --autoris-primary-hover: #3556B6;
    --autoris-primary-strong: #10245f;
    --autoris-accent: #1B3AA0;
    --autoris-accent-soft: #E3EAFB;
    --autoris-success: #2E9D73;
    --autoris-success-hover: #247d5c;
    --autoris-success-bg: rgba(46, 157, 115, 0.16);
    --autoris-info: #4A83D8;
    --autoris-info-hover: #356db9;
    --autoris-info-bg: rgba(74, 131, 216, 0.16);
    --autoris-online: #2E9D73;
    --autoris-online-bg: rgba(46, 157, 115, 0.16);
    --autoris-offline: #64748b;
    --autoris-offline-bg: #eef2f7;
    --autoris-warning: #D4A63B;
    --autoris-warning-hover: #b88b25;
    --autoris-warning-bg: rgba(212, 166, 59, 0.18);
    --autoris-danger: #C4515A;
    --autoris-danger-hover: #9E1F32;
    --autoris-danger-bg: rgba(196, 81, 90, 0.16);
    --autoris-button-primary: #1B3AA0;
    --autoris-button-primary-hover: #3556B6;
    --autoris-button-primary-soft: #E3EAFB;
    --autoris-button-secondary: #3556B6;
    --autoris-button-secondary-hover: #1B3AA0;
    --autoris-button-secondary-soft: rgba(53, 86, 182, 0.16);
    --autoris-button-tertiary: #5874C6;
    --autoris-button-tertiary-hover: #3556B6;
    --autoris-button-light: #E3EAFB;
    --autoris-button-link: #4868D3;
    --autoris-button-info: #3556B6;
    --autoris-button-info-hover: #1B3AA0;
    --autoris-button-info-soft: rgba(53, 86, 182, 0.16);
    --autoris-button-success: #2E9D73;
    --autoris-button-success-hover: #247d5c;
    --autoris-button-success-soft: rgba(46, 157, 115, 0.16);
    --autoris-button-monitor: #5874C6;
    --autoris-button-monitor-hover: #3556B6;
    --autoris-button-command: #4868D3;
    --autoris-button-command-hover: #3556B6;
    --autoris-input-bg: #ffffff;
    --autoris-input-text: #172033;
    --autoris-table-bg: #ffffff;
    --autoris-table-hover: #f8fafc;
    --autoris-modal-bg: #ffffff;
    --autoris-dropdown-bg: #ffffff;
    --autoris-navbar-bg: #ffffff;
    --autoris-badge-bg: #edf2f7;
    --autoris-badge-text: #334155;
}

.autoris-admin-page .breadcrumb a {
    color: var(--autoris-primary);
    text-decoration: none;
}

.autoris-admin-hero,
.autoris-admin-filters,
.autoris-admin-table-card,
.autoris-admin-form .card {
    background: var(--autoris-surface);
    border: 1px solid var(--autoris-border);
    border-radius: 8px;
    box-shadow: var(--autoris-shadow-soft);
}

.autoris-admin-table-card .table {
    color: var(--autoris-text);
}

.autoris-admin-table-card thead th {
    color: var(--autoris-text-muted);
    font-size: 12px;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.autoris-admin-avatar {
    align-items: center;
    background: color-mix(in srgb, var(--autoris-primary) 14%, var(--autoris-surface));
    border: 1px solid color-mix(in srgb, var(--autoris-primary) 24%, var(--autoris-border));
    border-radius: 8px;
    color: var(--autoris-primary);
    display: inline-flex;
    flex: 0 0 auto;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.autoris-admin-avatar.is-large {
    height: 54px;
    width: 54px;
}

.autoris-profile-badge {
    border: 1px solid var(--autoris-border);
    color: var(--autoris-text);
}

.autoris-profile-badge.is-superadministrador {
    background: color-mix(in srgb, var(--autoris-danger) 14%, var(--autoris-surface));
    color: var(--autoris-danger);
}

.autoris-profile-badge.is-administrador {
    background: color-mix(in srgb, var(--autoris-primary) 14%, var(--autoris-surface));
    color: var(--autoris-primary);
}

.autoris-profile-badge.is-usuario {
    background: color-mix(in srgb, var(--autoris-success) 14%, var(--autoris-surface));
    color: var(--autoris-success);
}

.autoris-admin-definition-list dt {
    color: var(--autoris-text-muted);
    font-weight: 700;
}

.autoris-admin-definition-list dd {
    color: var(--autoris-text);
}

html.autoris-theme-dark,
body.autoris-theme-dark {
    --autoris-bg: #131A2C;
    --autoris-bg-soft: #121212;
    --autoris-surface: #1B2337;
    --autoris-surface-soft: #222A3E;
    --autoris-surface-elevated: #26304A;
    --autoris-text: #EDF2FF;
    --autoris-text-muted: #B6C4F0;
    --autoris-muted: #B6C4F0;
    --autoris-border: rgba(255, 255, 255, 0.06);
    --autoris-border-soft: rgba(255, 255, 255, 0.04);
    --autoris-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-shadow-hover: 0 10px 26px rgba(0, 0, 0, 0.28);
    --autoris-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.15);
    --theme-primary: #1B3AA0;
    --theme-secondary: #3556B6;
    --theme-tertiary: #5874C6;
    --theme-light: #E3EAFB;
    --theme-link: #4868D3;
    --autoris-primary: #1B3AA0;
    --autoris-primary-hover: #274bb5;
    --autoris-primary-strong: #10245f;
    --autoris-accent: #1B3AA0;
    --autoris-accent-soft: rgba(27, 58, 160, 0.24);
    --autoris-success: #2E9D73;
    --autoris-success-hover: #247d5c;
    --autoris-success-bg: rgba(46, 157, 115, 0.20);
    --autoris-info: #4A83D8;
    --autoris-info-hover: #356db9;
    --autoris-info-bg: rgba(74, 131, 216, 0.20);
    --autoris-online: #2E9D73;
    --autoris-online-bg: rgba(46, 157, 115, 0.20);
    --autoris-offline: #a8b3c5;
    --autoris-offline-bg: rgba(148, 163, 184, 0.16);
    --autoris-warning: #d69a25;
    --autoris-warning-hover: #b7791f;
    --autoris-warning-bg: rgba(183, 121, 31, 0.22);
    --autoris-danger: #C4515A;
    --autoris-danger-hover: #9E1F32;
    --autoris-danger-bg: rgba(196, 81, 90, 0.22);
    --autoris-button-primary: #1B3AA0;
    --autoris-button-primary-hover: #3556B6;
    --autoris-button-primary-soft: rgba(88, 116, 198, 0.24);
    --autoris-button-secondary: #3556B6;
    --autoris-button-secondary-hover: #5874C6;
    --autoris-button-secondary-soft: rgba(53, 86, 182, 0.22);
    --autoris-button-tertiary: #5874C6;
    --autoris-button-tertiary-hover: #3556B6;
    --autoris-button-light: #E3EAFB;
    --autoris-button-link: #4868D3;
    --autoris-button-info: #3556B6;
    --autoris-button-info-hover: #5874C6;
    --autoris-button-info-soft: rgba(53, 86, 182, 0.22);
    --autoris-button-success: #2E9D73;
    --autoris-button-success-hover: #38b985;
    --autoris-button-success-soft: rgba(46, 157, 115, 0.22);
    --autoris-button-monitor: #5874C6;
    --autoris-button-monitor-hover: #8067C7;
    --autoris-button-command: #4868D3;
    --autoris-button-command-hover: #5874C6;
    --autoris-input-bg: #111a2b;
    --autoris-input-text: #e5edf7;
    --autoris-table-bg: #162033;
    --autoris-table-hover: #21304a;
    --autoris-modal-bg: #172238;
    --autoris-dropdown-bg: #172238;
    --autoris-navbar-bg: #152036;
    --autoris-badge-bg: #22314c;
    --autoris-badge-text: #dbeafe;
}

html.autoris-theme-light,
html.autoris-theme-dark {
    background: var(--autoris-bg);
    color-scheme: light;
}

html.autoris-theme-dark {
    color-scheme: dark;
}

body {
    background: var(--autoris-bg) !important;
    color: var(--autoris-text);
    min-height: 100vh;
}

a {
    color: var(--autoris-primary);
}

.card,
.autoris-panel {
    background: var(--autoris-surface) !important;
    border-color: var(--autoris-border) !important;
    box-shadow: var(--autoris-shadow-soft);
    color: var(--autoris-text);
}

.card-header,
.card-footer,
.modal-header,
.modal-footer {
    background: var(--autoris-surface-soft);
    border-color: var(--autoris-border);
    color: var(--autoris-text);
}

.modal-content,
.popover,
.toast {
    background: var(--autoris-modal-bg);
    border: 1px solid var(--autoris-border);
    color: var(--autoris-text);
}

.modal-title,
.card-title,
.form-label,
label,
h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--autoris-text);
}

.text-muted,
.form-text,
.autoris-modal-subtitle {
    color: var(--autoris-text-muted) !important;
}

.form-control,
.form-select,
textarea.form-control {
    background-color: var(--autoris-input-bg);
    border-color: var(--autoris-border);
    color: var(--autoris-input-text);
}

.form-control:focus,
.form-select:focus {
    background-color: var(--autoris-input-bg);
    border-color: var(--autoris-button-primary);
    box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--autoris-button-primary) 16%, transparent);
    color: var(--autoris-input-text);
}

.form-control::placeholder {
    color: var(--autoris-text-muted);
    opacity: .8;
}

.form-control:-webkit-autofill,
.form-control:-webkit-autofill:hover,
.form-control:-webkit-autofill:focus,
.form-select:-webkit-autofill,
.form-select:-webkit-autofill:hover,
.form-select:-webkit-autofill:focus {
    -webkit-text-fill-color: #000000;
    box-shadow: 0 0 0 1000px var(--autoris-input-bg) inset;
    caret-color: #000000;
    transition: background-color 9999s ease-out;
}

body.autoris-theme-dark .form-control:-webkit-autofill,
body.autoris-theme-dark .form-control:-webkit-autofill:hover,
body.autoris-theme-dark .form-control:-webkit-autofill:focus,
body.autoris-theme-dark .form-select:-webkit-autofill,
body.autoris-theme-dark .form-select:-webkit-autofill:hover,
body.autoris-theme-dark .form-select:-webkit-autofill:focus {
    -webkit-text-fill-color: #000000;
    box-shadow: 0 0 0 1000px var(--autoris-input-bg) inset;
    caret-color: #000000;
}

.table {
    --bs-table-bg: var(--autoris-table-bg);
    --bs-table-color: var(--autoris-text);
    --bs-table-border-color: var(--autoris-border-soft);
    --bs-table-hover-bg: var(--autoris-table-hover);
    color: var(--autoris-text);
}

.table > :not(caption) > * > * {
    background-color: var(--autoris-table-bg);
    border-color: var(--autoris-border-soft);
    color: var(--autoris-text);
}

.dropdown-menu {
    background: var(--autoris-dropdown-bg);
    border-color: var(--autoris-border);
    box-shadow: var(--autoris-shadow);
    color: var(--autoris-text);
}

.dropdown-item {
    color: var(--autoris-text);
}

.dropdown-item:hover,
.dropdown-item:focus {
    background: var(--autoris-surface-soft);
    color: var(--autoris-text);
}

.navbar,
.list-group-item {
    background: var(--autoris-navbar-bg);
    border-color: var(--autoris-border);
    color: var(--autoris-text);
}

.badge,
.autoris-pill {
    background: var(--autoris-badge-bg);
    color: var(--autoris-badge-text);
}

.alert {
    background: var(--autoris-surface-soft);
    border-color: var(--autoris-border);
    color: var(--autoris-text);
}

.swal2-popup {
    background: var(--autoris-modal-bg) !important;
    color: var(--autoris-text) !important;
}

.swal2-title,
.swal2-html-container {
    color: var(--autoris-text) !important;
}

.btn-primary,
.btn-autoris-primary {
    background: var(--autoris-button-primary, var(--autoris-primary));
    border-color: var(--autoris-button-primary, var(--autoris-primary));
    color: #fff;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-autoris-primary:hover,
.btn-autoris-primary:focus {
    background: var(--autoris-button-primary-hover, var(--autoris-primary-hover));
    border-color: var(--autoris-button-primary-hover, var(--autoris-primary-hover));
    color: #fff;
}

.btn-secondary,
.btn-autoris-secondary {
    background: var(--autoris-button-secondary, var(--theme-secondary));
    border-color: var(--autoris-button-secondary, var(--theme-secondary));
    color: #fff;
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-autoris-secondary:hover,
.btn-autoris-secondary:focus {
    background: var(--autoris-button-secondary-hover, var(--theme-primary));
    border-color: var(--autoris-button-secondary-hover, var(--theme-primary));
    color: #fff;
}

.btn-tertiary,
.btn-autoris-tertiary {
    background: var(--autoris-button-tertiary, var(--theme-tertiary));
    border-color: var(--autoris-button-tertiary, var(--theme-tertiary));
    color: #fff;
}

.btn-tertiary:hover,
.btn-tertiary:focus,
.btn-autoris-tertiary:hover,
.btn-autoris-tertiary:focus {
    background: var(--autoris-button-tertiary-hover, var(--theme-secondary));
    border-color: var(--autoris-button-tertiary-hover, var(--theme-secondary));
    color: #fff;
}

.btn-link {
    color: var(--autoris-button-link, var(--theme-link));
}

.btn-link:hover,
.btn-link:focus {
    color: var(--autoris-primary);
}

.btn-outline-secondary {
    border-color: color-mix(in srgb, var(--autoris-button-secondary) 55%, var(--autoris-border));
    color: var(--autoris-button-secondary);
}

.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
    background: var(--autoris-button-secondary);
    border-color: var(--autoris-button-secondary);
    color: #ffffff;
}

.btn-outline-tertiary {
    border-color: color-mix(in srgb, var(--autoris-button-tertiary) 55%, var(--autoris-border));
    color: var(--autoris-button-tertiary);
}

.btn-outline-tertiary:hover,
.btn-outline-tertiary:focus {
    background: var(--autoris-button-tertiary);
    border-color: var(--autoris-button-tertiary);
    color: #ffffff;
}

.autoris-theme-toggle {
    align-items: center;
    background: var(--autoris-surface-elevated);
    border: 1px solid var(--autoris-border);
    border-radius: 999px;
    bottom: 18px;
    box-shadow: var(--autoris-shadow);
    color: var(--autoris-text);
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 8px;
    padding: 9px 12px;
    position: fixed;
    right: 18px;
    z-index: 1080;
}

.autoris-theme-toggle:hover,
.autoris-theme-toggle:focus {
    background: var(--autoris-surface-soft);
    color: var(--autoris-text);
}

.autoris-theme-toggle:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--autoris-primary) 28%, transparent);
    outline-offset: 2px;
}

.autoris-theme-toggle i {
    color: var(--autoris-primary);
}

.autoris-shell {
    width: min(1440px, calc(100% - 32px));
    margin: 32px auto;
    color: var(--autoris-text);
}

.autoris-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 20px;
    background: var(--autoris-surface);
    border: 1px solid var(--autoris-border);
    border-radius: 8px;
    box-shadow: var(--autoris-shadow-soft);
    padding: 18px;
}

.autoris-header h1 {
    font-size: 28px;
    margin: 0;
    color: var(--autoris-text);
}

.autoris-kicker {
    color: var(--autoris-text-muted);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .02em;
    margin: 0 0 4px;
    text-transform: uppercase;
}

.autoris-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.autoris-header-controls {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-end;
}

.autoris-quick-actions {
    border-top: 1px solid var(--autoris-border);
    padding-top: 10px;
}

.autoris-summary {
    display: grid;
    grid-template-columns: repeat(5, minmax(120px, 1fr));
    gap: 12px;
    margin-bottom: 20px;
}

.autoris-summary div,
.autoris-panel {
    border: 1px solid var(--autoris-border);
    border-radius: 8px;
    background: var(--autoris-surface);
    box-shadow: var(--autoris-shadow-soft);
}

.autoris-summary div {
    background: var(--autoris-surface);
    padding: 16px;
    position: relative;
    overflow: hidden;
}

.autoris-summary div::before {
    background: color-mix(in srgb, var(--autoris-primary) 28%, var(--autoris-border));
    content: "";
    height: 3px;
    left: 16px;
    position: absolute;
    right: 16px;
    top: 0;
}

.autoris-summary span {
    display: block;
    color: var(--autoris-text-muted);
    font-size: 13px;
}

.autoris-summary strong {
    display: block;
    font-size: 28px;
    line-height: 1.2;
    color: var(--autoris-text);
}

.autoris-panel {
    padding: 18px;
    margin-bottom: 20px;
    overflow: hidden;
}

.autoris-dashboard-grid {
    align-items: start;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
}

.autoris-dashboard-grid .autoris-panel {
    margin-bottom: 0;
}

.autoris-devices-panel {
    background: var(--autoris-surface);
    border-color: var(--autoris-border);
    box-shadow: var(--autoris-shadow);
}

.autoris-events-panel {
    background: #0f172a;
    border-color: rgba(148, 163, 184, 0.24);
    box-shadow: 0 20px 46px rgba(15, 23, 42, 0.16);
    color: #e5e7eb;
    position: sticky;
    top: 18px;
}

.autoris-devices-panel .table {
    --bs-table-hover-bg: #f8fafc;
    border-collapse: separate;
    border-spacing: 0 8px;
    margin-bottom: 0;
}

.autoris-devices-panel .table tbody tr {
    background: var(--autoris-surface-elevated);
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.045);
    transition: box-shadow .16s ease, transform .16s ease;
}

.autoris-devices-panel .table tbody tr:hover {
    box-shadow: var(--autoris-shadow-hover);
    transform: translateY(-1px);
}

.autoris-devices-panel .table tbody td:first-child {
    border-bottom-left-radius: 8px;
    border-top-left-radius: 8px;
}

.autoris-devices-panel .table tbody td:last-child {
    border-bottom-right-radius: 8px;
    border-top-right-radius: 8px;
}

.autoris-panel-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.autoris-panel-kicker {
    color: var(--autoris-muted);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .06em;
    margin: 0 0 3px;
    text-transform: uppercase;
}

.autoris-events-panel .autoris-panel-kicker {
    color: #93c5fd;
}

.autoris-panel-title h2 {
    color: var(--autoris-text);
    font-size: 18px;
    margin: 0;
}

.autoris-events-panel .autoris-panel-title h2 {
    color: #f8fafc;
}

.autoris-devices-panel .table thead th {
    background: transparent;
    border-bottom: 0;
    color: var(--autoris-muted);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.autoris-devices-panel .table tbody td {
    background: var(--autoris-surface-elevated);
    border-color: var(--autoris-border-soft);
    border-style: solid;
    border-width: 1px 0;
    padding-bottom: 12px;
    padding-top: 12px;
}

.autoris-devices-panel .table tbody td:first-child {
    border-left-width: 1px;
}

.autoris-devices-panel .table tbody td:last-child {
    border-right-width: 1px;
}

.autoris-device-cell {
    align-items: center;
    display: flex;
    gap: 10px;
    min-width: 250px;
}

.autoris-panel-subtitle {
    color: var(--autoris-muted);
    font-size: 13px;
    margin-top: 3px;
}

.autoris-selection-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.autoris-panel-summary-chips {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.autoris-panel-summary-chips span {
    align-items: center;
    background: var(--autoris-surface-elevated);
    border: 1px solid var(--autoris-border);
    border-radius: 999px;
    color: var(--autoris-muted);
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    gap: 6px;
    padding: 7px 10px;
}

.autoris-panel-header-aside {
    align-items: flex-end;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 14px;
}

.autoris-device-select-col {
    text-align: center;
    width: 42px;
}

.autoris-device-select-col .form-check-input {
    cursor: pointer;
    margin: 0;
}

.autoris-device-select-col .form-check-input:disabled {
    cursor: not-allowed;
    opacity: .35;
}

.autoris-device-row td:first-child {
    position: relative;
}

.autoris-device-row td:first-child::before {
    background: var(--autoris-offline);
    border-radius: 999px;
    bottom: 12px;
    content: "";
    left: 0;
    position: absolute;
    top: 12px;
    width: 3px;
}

.autoris-device-row.is-online td:first-child::before {
    background: var(--autoris-online);
}

.autoris-device-row.is-reconectando td:first-child::before,
.autoris-device-row.has-low-battery td:first-child::before {
    background: var(--autoris-warning);
}

.autoris-device-row.is-locked td:first-child::before {
    box-shadow: 0 0 0 3px rgba(180, 35, 24, 0.10);
}

.autoris-device-row.is-empty td:first-child::before {
    display: none;
}

.autoris-screenshot-thumb {
    align-items: center;
    background: var(--autoris-surface-soft);
    border: 1px solid var(--autoris-border);
    border-radius: 6px;
    color: var(--autoris-muted);
    cursor: pointer;
    display: flex;
    flex: 0 0 92px;
    height: 148px;
    justify-content: center;
    overflow: hidden;
    padding: 0;
    position: relative;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
    width: 92px;
}

.autoris-screenshot-thumb:hover:not(:disabled),
.autoris-screenshot-thumb:focus-visible:not(:disabled) {
    border-color: var(--autoris-accent);
    box-shadow: 0 10px 22px rgba(15, 23, 42, 0.12);
    transform: translateY(-1px);
}

.autoris-screenshot-thumb:focus-visible {
    outline: 3px solid var(--autoris-focus-ring, rgba(27, 58, 160, 0.22));
    outline-offset: 2px;
}

.autoris-screenshot-thumb:disabled {
    cursor: default;
}

.autoris-screenshot-thumb img {
    display: block;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.autoris-screenshot-placeholder {
    font-size: 11px;
    font-weight: 700;
    line-height: 1.1;
    padding: 8px;
    text-align: center;
}

.autoris-screenshot-state {
    background: rgba(15, 23, 42, 0.68);
    bottom: 0;
    color: #fff;
    font-size: 9px;
    font-weight: 700;
    left: 0;
    line-height: 1;
    padding: 3px 4px;
    position: absolute;
    right: 0;
    text-align: center;
}

.autoris-screenshot-thumb.is-offline img {
    filter: grayscale(1);
    opacity: .72;
}

.autoris-screenshot-dialog {
    max-width: min(980px, calc(100vw - 28px));
}

.autoris-screenshot-modal {
    border: 0;
    border-radius: 8px;
    overflow: hidden;
}

.autoris-screenshot-modal .modal-header {
    background: var(--autoris-surface);
    border-bottom: 1px solid var(--autoris-border);
}

.autoris-screenshot-modal .modal-body {
    align-items: center;
    background: #0b1220;
    display: flex;
    justify-content: center;
    min-height: min(72vh, 720px);
    padding: 18px;
}

.autoris-screenshot-modal img {
    background: #050b16;
    border: 1px solid rgba(226, 232, 240, 0.18);
    border-radius: 6px;
    display: block;
    max-height: min(72vh, 760px);
    max-width: 100%;
    object-fit: contain;
}

.autoris-status {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-width: 98px;
    justify-content: center;
    border-radius: 999px;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.autoris-status-online {
    color: var(--autoris-online);
    background: var(--autoris-online-bg);
}

.autoris-status-reconectando {
    color: var(--autoris-warning);
    background: var(--autoris-warning-bg);
}

.autoris-status-offline,
.autoris-status- {
    color: var(--autoris-offline);
    background: var(--autoris-offline-bg);
}

.autoris-status-dot {
    background: currentColor;
    border-radius: 999px;
    box-shadow: 0 0 0 4px color-mix(in srgb, currentColor 16%, transparent);
    height: 7px;
    width: 7px;
}

.autoris-battery {
    color: var(--autoris-text);
    display: grid;
    gap: 6px;
    font-weight: 700;
    min-width: 96px;
}

.autoris-battery > span {
    align-items: center;
    display: inline-flex;
    gap: 6px;
}

.autoris-battery small {
    color: var(--autoris-online);
    font-size: 12px;
    font-weight: 600;
}

.autoris-battery.is-low {
    color: var(--autoris-warning);
}

.autoris-battery-track {
    background: var(--autoris-border-soft);
    border-radius: 999px;
    height: 6px;
    overflow: hidden;
}

.autoris-battery-track span {
    background: var(--autoris-online);
    border-radius: inherit;
    display: block;
    height: 100%;
    min-width: 4px;
}

.autoris-battery.is-low .autoris-battery-track span {
    background: var(--autoris-warning);
}

.autoris-device-main {
    display: grid;
    gap: 8px;
    min-width: 0;
}

.autoris-device-name-line {
    align-items: center;
    color: var(--autoris-text);
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.autoris-device-name-line strong {
    font-size: 15px;
    line-height: 1.2;
}

.autoris-device-icon {
    align-items: center;
    background: var(--autoris-accent-soft);
    border: 1px solid color-mix(in srgb, var(--autoris-accent) 25%, transparent);
    border-radius: 8px;
    color: var(--autoris-accent);
    display: inline-flex;
    height: 30px;
    justify-content: center;
    width: 30px;
}

.autoris-device-meta {
    color: var(--autoris-muted);
    display: flex;
    flex-wrap: wrap;
    font-size: 12px;
    gap: 6px 12px;
    line-height: 1.35;
}

.autoris-device-meta span {
    align-items: center;
    display: inline-flex;
    gap: 5px;
    min-width: 0;
    overflow-wrap: anywhere;
}

.autoris-security-screen-summary {
    align-items: flex-start;
    background: var(--autoris-danger-bg);
    border-left: 3px solid var(--autoris-danger);
    color: var(--autoris-text);
    display: flex;
    flex-wrap: wrap;
    font-size: 12px;
    gap: 5px 12px;
    margin-top: 8px;
    padding: 8px 10px;
}

.autoris-security-screen-summary strong {
    color: var(--autoris-danger);
}

.autoris-security-screen-warning {
    color: var(--autoris-warning);
    font-weight: 700;
    width: 100%;
}

.autoris-alert-chip,
.autoris-monitor-state {
    align-items: center;
    background: var(--autoris-danger-bg);
    border: 1px solid color-mix(in srgb, var(--autoris-danger) 22%, transparent);
    border-radius: 999px;
    color: var(--autoris-danger);
    display: inline-flex;
    font-size: 11px;
    font-weight: 800;
    gap: 5px;
    padding: 4px 8px;
    text-transform: uppercase;
}

.autoris-alert-chip.is-warning {
    background: var(--autoris-warning-bg);
    border-color: color-mix(in srgb, var(--autoris-warning) 24%, transparent);
    color: var(--autoris-warning);
}

.autoris-alert-chip.is-info {
    background: var(--autoris-info-bg, rgba(14, 165, 233, 0.12));
    border-color: color-mix(in srgb, var(--autoris-info, #0284c7) 24%, transparent);
    color: var(--autoris-info, #0284c7);
}

.autoris-monitor-state {
    background: var(--autoris-accent-soft);
    border-color: color-mix(in srgb, var(--autoris-accent) 24%, transparent);
    color: var(--autoris-accent);
    margin-top: 6px;
}

.autoris-device-metric {
    color: var(--autoris-muted);
    display: grid;
    gap: 2px;
    min-width: 110px;
}

.autoris-device-metric span {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.autoris-device-metric strong {
    color: var(--autoris-text);
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
}

.autoris-event {
    align-items: start;
    background: rgba(15, 23, 42, 0.72);
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 8px;
    color: #cbd5e1;
    display: grid;
    gap: 9px;
    grid-template-columns: 10px minmax(0, 1fr);
    padding: 10px;
    position: relative;
}

.autoris-event strong {
    color: #f8fafc;
    display: block;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.25;
}

.autoris-event span,
.autoris-event small {
    color: #94a3b8;
    display: block;
    font-size: 11px;
    line-height: 1.3;
}

.autoris-event small {
    grid-column: 2;
}

.autoris-event-dot {
    background: #38bdf8;
    border-radius: 999px;
    box-shadow: 0 0 0 4px rgba(56, 189, 248, 0.14);
    height: 8px;
    margin-top: 4px;
    width: 8px;
}

.autoris-event-log {
    display: grid;
    gap: 8px;
    max-height: 620px;
    overflow: auto;
    padding-right: 2px;
}

.autoris-events-panel--compact {
    margin-bottom: 0;
    width: 220px;
}

.autoris-events-panel--compact .autoris-event-log {
    grid-auto-rows: 68px;
    max-height: 68px;
    overflow-x: hidden;
    overflow-y: auto;
}

.autoris-events-panel--compact .autoris-event {
    height: 68px;
    overflow: hidden;
}

.autoris-events-panel .text-muted {
    color: #94a3b8 !important;
}

.autoris-devices-panel .text-muted {
    color: var(--autoris-muted) !important;
}

.autoris-device-actions {
    align-items: center;
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(2, 42px);
    justify-content: flex-end;
    min-width: 92px;
}

.autoris-device-delete-form {
    display: contents;
}

.autoris-device-actions .btn {
    align-items: center;
    display: inline-flex;
    font-size: 14px;
    height: 42px;
    justify-content: center;
    padding: 0;
    width: 42px;
}

.autoris-device-actions .autoris-device-action-wide {
    gap: 6px;
    grid-column: span 2;
    padding: 0 10px;
    width: 91px;
}

.autoris-device-action-wide span {
    font-size: 10px;
    line-height: 1.1;
    overflow-wrap: anywhere;
}

.autoris-device-actions .btn:focus-visible {
    outline: 3px solid var(--autoris-focus-ring, rgba(27, 58, 160, 0.20));
    outline-offset: 2px;
}

.btn-soft-slate {
    background: var(--autoris-surface-soft);
    border-color: var(--autoris-border);
    color: var(--autoris-text);
}

.btn-soft-slate:hover,
.btn-soft-slate:focus {
    background: var(--autoris-surface-elevated);
    border-color: var(--autoris-border);
    color: var(--autoris-text);
}

.autoris-shell .btn {
    border-width: 1px;
    box-shadow: var(--autoris-shadow-soft);
    font-weight: 700;
    letter-spacing: 0;
    text-transform: none;
}

.autoris-shell .btn:disabled,
.modal .btn:disabled {
    box-shadow: none;
    opacity: .58;
}

.btn-autoris-primary {
    background: var(--autoris-button-primary, var(--autoris-primary));
    border-color: var(--autoris-button-primary, var(--autoris-primary));
    color: #fff;
}

.btn-autoris-primary:hover,
.btn-autoris-primary:focus {
    background: var(--autoris-button-primary-hover, var(--autoris-primary-hover));
    border-color: var(--autoris-button-primary-hover, var(--autoris-primary-hover));
    color: #fff;
}

.btn-secondary,
.btn-autoris-secondary {
    background: var(--autoris-button-secondary, var(--theme-secondary));
    border-color: var(--autoris-button-secondary, var(--theme-secondary));
    color: #fff;
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-autoris-secondary:hover,
.btn-autoris-secondary:focus {
    background: var(--autoris-button-secondary-hover, var(--theme-primary));
    border-color: var(--autoris-button-secondary-hover, var(--theme-primary));
    color: #fff;
}

.btn-tertiary,
.btn-autoris-tertiary {
    background: var(--autoris-button-tertiary, var(--theme-tertiary));
    border-color: var(--autoris-button-tertiary, var(--theme-tertiary));
    color: #fff;
}

.btn-tertiary:hover,
.btn-tertiary:focus,
.btn-autoris-tertiary:hover,
.btn-autoris-tertiary:focus {
    background: var(--autoris-button-tertiary-hover, var(--theme-secondary));
    border-color: var(--autoris-button-tertiary-hover, var(--theme-secondary));
    color: #fff;
}

.btn-link {
    color: var(--autoris-button-link, var(--theme-link));
}

.btn-link:hover,
.btn-link:focus {
    color: var(--autoris-primary);
}

.btn-info,
.btn-autoris-info {
    background: var(--autoris-button-info);
    border-color: var(--autoris-button-info);
    color: #fff;
}

.btn-success,
.btn-autoris-success {
    background: var(--autoris-button-success);
    border-color: var(--autoris-button-success);
    color: #fff;
}

.btn-autoris-monitor {
    background: var(--autoris-button-monitor);
    border-color: var(--autoris-button-monitor);
    color: #fff;
}

.btn-autoris-command {
    background: var(--autoris-button-command);
    border-color: var(--autoris-button-command);
    color: #fff;
}

.btn-info:hover,
.btn-info:focus,
.btn-autoris-info:hover,
.btn-autoris-info:focus {
    background: var(--autoris-button-info-hover);
    border-color: var(--autoris-button-info-hover);
    color: #fff;
}

.btn-success:hover,
.btn-success:focus,
.btn-autoris-success:hover,
.btn-autoris-success:focus {
    background: var(--autoris-button-success-hover);
    border-color: var(--autoris-button-success-hover);
    color: #fff;
}

.btn-autoris-monitor:hover,
.btn-autoris-monitor:focus {
    background: var(--autoris-button-monitor-hover);
    border-color: var(--autoris-button-monitor-hover);
    color: #fff;
}

.btn-autoris-command:hover,
.btn-autoris-command:focus {
    background: var(--autoris-button-command-hover);
    border-color: var(--autoris-button-command-hover);
    color: #fff;
}

.btn-autoris-danger {
    background: var(--autoris-danger);
    border-color: var(--autoris-danger);
    color: #fff;
}

.btn-autoris-danger:hover,
.btn-autoris-danger:focus {
    background: var(--autoris-danger-hover);
    border-color: var(--autoris-danger-hover);
    color: #fff;
}

.btn-autoris-soft-primary {
    background: var(--autoris-button-primary-soft);
    border-color: color-mix(in srgb, var(--autoris-button-primary) 32%, var(--autoris-border));
    color: var(--autoris-button-primary);
}

.btn-autoris-soft-info {
    background: var(--autoris-button-info-soft);
    border-color: color-mix(in srgb, var(--autoris-button-info) 32%, var(--autoris-border));
    color: var(--autoris-button-info);
}

.btn-autoris-soft-success {
    background: var(--autoris-button-success-soft);
    border-color: color-mix(in srgb, var(--autoris-button-success) 32%, var(--autoris-border));
    color: var(--autoris-button-success);
}

.btn-autoris-soft-primary:hover,
.btn-autoris-soft-primary:focus {
    background: color-mix(in srgb, var(--autoris-button-primary) 18%, var(--autoris-surface));
    border-color: color-mix(in srgb, var(--autoris-button-primary) 44%, var(--autoris-border));
    color: var(--autoris-button-primary);
}

.btn-autoris-soft-info:hover,
.btn-autoris-soft-info:focus {
    background: color-mix(in srgb, var(--autoris-button-info) 18%, var(--autoris-surface));
    border-color: color-mix(in srgb, var(--autoris-button-info) 44%, var(--autoris-border));
    color: var(--autoris-button-info);
}

.btn-autoris-soft-success:hover,
.btn-autoris-soft-success:focus {
    background: color-mix(in srgb, var(--autoris-button-success) 18%, var(--autoris-surface));
    border-color: color-mix(in srgb, var(--autoris-button-success) 44%, var(--autoris-border));
    color: var(--autoris-button-success);
}

.btn-autoris-warning {
    background: var(--autoris-warning);
    border-color: var(--autoris-warning);
    color: #fff;
}

.btn-autoris-warning:hover,
.btn-autoris-warning:focus {
    background: var(--autoris-warning-hover);
    border-color: var(--autoris-warning-hover);
    color: #fff;
}

.btn-autoris-soft-warning {
    background: var(--autoris-warning-bg);
    border-color: color-mix(in srgb, var(--autoris-warning) 30%, var(--autoris-border));
    color: var(--autoris-warning);
}

.btn-autoris-soft-warning:hover,
.btn-autoris-soft-warning:focus {
    background: color-mix(in srgb, var(--autoris-warning) 20%, var(--autoris-surface));
    border-color: color-mix(in srgb, var(--autoris-warning) 42%, var(--autoris-border));
    color: var(--autoris-warning);
}

.btn-autoris-soft-danger {
    background: var(--autoris-danger-bg);
    border-color: color-mix(in srgb, var(--autoris-danger) 30%, var(--autoris-border));
    color: var(--autoris-danger);
}

.btn-autoris-soft-danger:hover,
.btn-autoris-soft-danger:focus {
    background: color-mix(in srgb, var(--autoris-danger) 18%, var(--autoris-surface));
    border-color: color-mix(in srgb, var(--autoris-danger) 42%, var(--autoris-border));
    color: var(--autoris-danger);
}

.btn-autoris-soft-slate {
    background: var(--autoris-surface-soft);
    border-color: var(--autoris-border);
    color: var(--autoris-text);
}

.btn-autoris-soft-slate:hover,
.btn-autoris-soft-slate:focus {
    background: var(--autoris-surface-elevated);
    border-color: color-mix(in srgb, var(--autoris-border) 64%, var(--autoris-primary));
    color: var(--autoris-text);
}

.autoris-modal-subtitle {
    color: var(--autoris-text-muted);
    font-size: 12px;
    margin-top: 2px;
}

.autoris-command-modal {
    border: 0;
    border-radius: 8px;
    box-shadow: var(--autoris-shadow-hover);
}

.autoris-command-modal .modal-header {
    background: var(--autoris-surface-soft);
    border-bottom-color: var(--autoris-border);
}

.autoris-command-controls {
    display: grid;
    gap: 14px;
}

.autoris-command-controls label {
    color: var(--autoris-text);
    display: grid;
    font-size: 13px;
    font-weight: 700;
    gap: 6px;
    margin: 0;
}

.autoris-open-url-mode {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.autoris-open-url-mode legend {
    width: auto;
    margin: 0 0 0.45rem;
    padding: 0;
    font-size: 0.78rem;
    font-weight: 700;
    color: var(--autoris-text-muted);
}

.autoris-open-url-mode .btn {
    min-width: 0;
    white-space: normal;
}

.autoris-command-controls .form-control,
.autoris-command-controls .form-select {
    min-width: 0;
}

.autoris-command-controls textarea {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    font-size: 12px;
    resize: vertical;
}

.autoris-search-select {
    position: relative;
}

.autoris-search-select-options {
    background: var(--autoris-surface);
    border: 1px solid var(--autoris-border);
    border-radius: 8px;
    box-shadow: var(--autoris-shadow-hover);
    display: none;
    left: 0;
    max-height: 260px;
    overflow: auto;
    position: absolute;
    right: 0;
    top: calc(100% + 6px);
    z-index: 1080;
}

.autoris-search-select.is-open .autoris-search-select-options {
    display: block;
}

.autoris-search-select-option {
    background: transparent;
    border: 0;
    border-bottom: 1px solid var(--autoris-border-soft);
    color: var(--autoris-text);
    display: grid;
    gap: 2px;
    padding: 10px 12px;
    text-align: left;
    width: 100%;
}

.autoris-search-select-option:last-child {
    border-bottom: 0;
}

.autoris-search-select-option:hover,
.autoris-search-select-option:focus,
.autoris-search-select-option.is-selected {
    background: color-mix(in srgb, var(--autoris-primary) 10%, var(--autoris-surface));
    outline: none;
}

.autoris-search-select-option strong {
    font-size: 13px;
}

.autoris-search-select-option small {
    color: var(--autoris-text-muted);
    font-size: 12px;
}

.autoris-bulk-message-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}


.autoris-bulk-kiosk-timer {
    background: var(--autoris-surface-soft);
    border: 1px solid var(--autoris-border-soft);
    border-radius: 8px;
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    padding: 12px;
}

.autoris-bulk-kiosk-timer label {
    display: grid;
    gap: 6px;
    margin: 0;
}

.autoris-bulk-kiosk-timer span,
.autoris-bulk-kiosk-timer label > span {
    color: var(--autoris-text-muted);
    font-size: 12px;
    font-weight: 700;
}

.autoris-bulk-kiosk-timer-note {
    color: var(--autoris-text-muted);
    font-size: 12px;
}

.autoris-bulk-kiosk-timer-line {
    color: var(--autoris-text-muted);
    display: block;
    font-size: 12px;
    margin-top: 2px;
}

.autoris-bulk-result-list {
    display: grid;
    gap: 8px;
    max-height: 240px;
    overflow: auto;
}

.autoris-bulk-result-item {
    align-items: center;
    background: var(--autoris-surface-soft);
    border: 1px solid var(--autoris-border-soft);
    border-left: 4px solid var(--autoris-border);
    border-radius: 8px;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding: 10px 12px;
}

.autoris-bulk-kiosk-row {
    align-items: flex-start;
}

.autoris-bulk-kiosk-main {
    min-width: 0;
}

.autoris-bulk-kiosk-actions {
    align-items: flex-end;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 8px;
}

.autoris-bulk-kiosk-actions .btn {
    white-space: nowrap;
}

.autoris-bulk-result-item strong {
    color: var(--autoris-text);
    display: block;
    font-size: 13px;
}

.autoris-bulk-result-item small {
    color: var(--autoris-text-muted);
    display: block;
    font-size: 12px;
    margin-top: 2px;
}

.autoris-bulk-result-item span {
    background: var(--autoris-badge-bg);
    border-radius: 999px;
    color: var(--autoris-badge-text);
    flex: 0 0 auto;
    font-size: 11px;
    font-weight: 800;
    padding: 5px 8px;
    text-transform: uppercase;
}

.autoris-bulk-result-item.is-aplicado,
.autoris-bulk-result-item.is-recibido,
.autoris-bulk-result-item.is-liberado {
    border-left-color: var(--autoris-success);
}

.autoris-bulk-result-item.is-enviado,
.autoris-bulk-result-item.is-pendiente,
.autoris-bulk-result-item.is-pendiente_liberacion {
    border-left-color: var(--autoris-primary);
}

.autoris-bulk-result-item.is-offline {
    border-left-color: var(--autoris-offline);
}

.autoris-bulk-result-item.is-fallido,
.autoris-bulk-result-item.is-no_instalada {
    border-left-color: var(--autoris-danger);
}

@media (max-width: 575.98px) {
    .autoris-bulk-result-item {
        align-items: stretch;
        flex-direction: column;
    }

    .autoris-bulk-kiosk-actions {
        align-items: flex-start;
    }
}

.autoris-open-url-note {
    align-items: flex-start;
    background: color-mix(in srgb, var(--autoris-primary) 8%, var(--autoris-surface));
    border: 1px solid color-mix(in srgb, var(--autoris-primary) 25%, var(--autoris-border));
    border-radius: 6px;
    color: var(--autoris-text-muted);
    display: flex;
    font-size: 13px;
    gap: 9px;
    line-height: 1.45;
    padding: 11px 12px;
}

.autoris-open-url-note i {
    color: var(--autoris-primary);
    margin-top: 2px;
}

.autoris-web-policy-dialog {
    max-width: min(1180px, calc(100vw - 24px));
}

.autoris-web-policy-modal .modal-body {
    padding: 0;
}

.autoris-web-policy-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(280px, .75fr);
    min-height: 520px;
}

.autoris-web-policy-config,
.autoris-web-policy-audit {
    padding: 20px;
}

.autoris-web-policy-audit {
    background: var(--autoris-surface-soft);
    border-left: 1px solid var(--autoris-border);
}

.autoris-web-policy-heading,
.autoris-web-policy-rules-header {
    align-items: center;
    display: flex;
    gap: 16px;
    justify-content: space-between;
}

.autoris-web-policy-heading h6,
.autoris-web-policy-rules-header strong {
    color: var(--autoris-text);
    margin: 0;
}

.autoris-web-policy-rules-header {
    margin: 20px 0 10px;
}

.autoris-web-policy-rules-header small {
    color: var(--autoris-muted);
    display: block;
    font-size: 12px;
    margin-top: 3px;
}

.autoris-policy-switch,
.autoris-web-policy-check {
    align-items: center;
    color: var(--autoris-text);
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    gap: 7px;
}

.autoris-policy-mode {
    display: grid;
    gap: 6px;
    margin-top: 18px;
}

.autoris-policy-mode > span,
.autoris-web-policy-rule label > span,
.autoris-web-policy-keyword label > span {
    color: var(--autoris-muted);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.autoris-policy-mode > small {
    color: var(--autoris-text-muted);
    font-size: 12px;
}

.autoris-web-policy-note {
    align-items: flex-start;
    background: var(--autoris-accent-soft);
    border: 1px solid color-mix(in srgb, var(--autoris-accent) 24%, transparent);
    border-radius: 8px;
    color: var(--autoris-text-muted);
    display: flex;
    font-size: 12px;
    gap: 9px;
    margin-top: 12px;
    padding: 10px 12px;
}

.autoris-web-policy-note i {
    color: var(--autoris-primary);
    margin-top: 2px;
}

.autoris-web-policy-rules,
.autoris-web-policy-keywords,
.autoris-web-policy-audit-list {
    display: grid;
    gap: 8px;
    overflow: auto;
}

.autoris-web-policy-rules,
.autoris-web-policy-keywords {
    max-height: 240px;
}

.autoris-web-policy-audit-list {
    max-height: 430px;
}

.autoris-web-policy-rule,
.autoris-web-policy-keyword {
    align-items: end;
    background: var(--autoris-surface-soft);
    border: 1px solid var(--autoris-border);
    border-radius: 8px;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(150px, 1fr) minmax(150px, 1fr) auto auto 38px;
    padding: 10px;
}

.autoris-web-policy-keyword {
    grid-template-columns: minmax(120px, .6fr) minmax(150px, 1fr) minmax(150px, 1fr) auto 38px;
}

.autoris-web-policy-rule label:not(.autoris-web-policy-check),
.autoris-web-policy-keyword label:not(.autoris-web-policy-check) {
    display: grid;
    gap: 4px;
}

.autoris-web-policy-rule .btn,
.autoris-web-policy-keyword .btn {
    height: 34px;
    padding: 0;
    width: 34px;
}

.autoris-web-policy-audit-entry {
    background: var(--autoris-surface);
    border: 1px solid var(--autoris-border);
    border-left: 3px solid var(--autoris-danger);
    border-radius: 7px;
    display: grid;
    gap: 5px;
    padding: 10px;
}

.autoris-web-policy-audit-entry > div {
    align-items: center;
    display: flex;
    gap: 8px;
    justify-content: space-between;
}

.autoris-web-policy-audit-entry strong {
    color: var(--autoris-text);
    font-size: 12px;
}

.autoris-web-policy-audit-entry span,
.autoris-web-policy-audit-keyword,
.autoris-web-policy-audit-entry small,
.autoris-web-policy-audit-entry time {
    color: var(--autoris-muted);
    font-size: 11px;
}

.autoris-web-policy-audit-entry code {
    color: var(--autoris-primary);
    display: block;
    font-size: 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.autoris-web-policy-empty {
    border: 1px dashed var(--autoris-border);
    border-radius: 8px;
    color: var(--autoris-muted);
    font-size: 12px;
    padding: 18px;
    text-align: center;
}

.autoris-qr-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(320px, 0.8fr);
    gap: 20px;
    align-items: start;
}

.autoris-qr-form .form-label {
    color: var(--autoris-text);
    font-size: 13px;
    font-weight: 700;
}

.autoris-qr-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.autoris-qr-preview {
    border: 1px solid var(--autoris-border);
    border-radius: 8px;
    padding: 16px;
    background: var(--autoris-surface-soft);
}

.autoris-qr-code {
    display: grid;
    min-height: 336px;
    place-items: center;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.10);
    color: #111827;
    padding: 32px;
    text-align: center;
}

.autoris-qr-code canvas,
.autoris-qr-code img {
    width: 256px;
    height: 256px;
}

.autoris-qr-json {
    background-color: var(--autoris-input-bg) !important;
    border-color: var(--autoris-border) !important;
    color: var(--autoris-input-text) !important;
    margin-top: 12px;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    font-size: 12px;
    opacity: 1;
    -webkit-text-fill-color: var(--autoris-input-text);
}

.autoris-apk-modal {
    border-radius: 8px;
}

.autoris-apk-qr {
    display: grid;
    min-height: 336px;
    place-items: center;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.10);
    color: #111827;
    overflow-wrap: anywhere;
    padding: 32px;
    text-align: center;
}

.autoris-apk-qr canvas,
.autoris-apk-qr img {
    height: 256px;
    width: 256px;
}

.autoris-apk-payload {
    background-color: var(--autoris-input-bg) !important;
    border-color: var(--autoris-border) !important;
    color: var(--autoris-input-text) !important;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    font-size: 12px;
    opacity: 1;
    resize: vertical;
    -webkit-text-fill-color: var(--autoris-input-text);
}

.autoris-qr-json[readonly],
.autoris-apk-payload[readonly] {
    background-color: var(--autoris-input-bg) !important;
    color: var(--autoris-input-text) !important;
    -webkit-text-fill-color: var(--autoris-input-text);
}

.autoris-monitor-dialog {
    max-width: min(1480px, calc(100vw - 28px));
}

.autoris-monitor-modal {
    border-radius: 8px;
    overflow: hidden;
}

.autoris-monitor-modal .modal-header {
    align-items: center;
    background: var(--autoris-surface);
    border-bottom: 1px solid var(--autoris-border);
    gap: 12px;
}

.autoris-monitor-subtitle {
    color: var(--autoris-text-muted);
    font-size: 12px;
    margin-top: 2px;
}

.autoris-monitor-pill {
    align-items: center;
    background: var(--autoris-surface-soft);
    border: 1px solid var(--autoris-border);
    border-radius: 999px;
    color: var(--autoris-text);
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    margin-left: auto;
    padding: 5px 10px;
    white-space: nowrap;
}

.autoris-monitor-pill.is-live {
    background: var(--autoris-success-bg);
    border-color: color-mix(in srgb, var(--autoris-success) 35%, var(--autoris-border));
    color: var(--autoris-success);
}

.autoris-monitor-pill.is-error {
    background: var(--autoris-danger-bg);
    border-color: color-mix(in srgb, var(--autoris-danger) 35%, var(--autoris-border));
    color: var(--autoris-danger);
}

.autoris-monitor-modal .modal-body {
    background: #0b1220;
    padding: 0;
}

.autoris-monitor-stage {
    align-items: center;
    aspect-ratio: var(--stream-aspect-ratio, 16 / 9);
    background: #0b1220;
    display: flex;
    justify-content: center;
    max-height: min(78vh, calc(100vh - 178px));
    min-height: 420px;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.autoris-monitor-stage.is-portrait {
    aspect-ratio: var(--stream-aspect-ratio, 9 / 16);
}

.autoris-monitor-stage.is-landscape {
    aspect-ratio: var(--stream-aspect-ratio, 16 / 9);
}

.autoris-monitor-stage video {
    background: #050b16;
    cursor: crosshair;
    display: none;
    height: 100%;
    object-fit: contain;
    touch-action: none;
    user-select: none;
    width: 100%;
}

.autoris-monitor-empty {
    align-items: center;
    color: #f9fafb;
    display: flex;
    flex-direction: column;
    font-size: 14px;
    gap: 14px;
    max-width: 560px;
    padding: 24px;
    text-align: center;
}

.autoris-monitor-loader {
    animation: autoris-spin 1s linear infinite;
    border: 3px solid rgba(255,255,255,0.18);
    border-top-color: #f8fafc;
    border-radius: 999px;
    display: inline-block;
    height: 28px;
    width: 28px;
}

.autoris-monitor-modal .modal-footer {
    align-items: center;
    background: var(--autoris-surface);
    gap: 10px;
}

.autoris-monitor-remote {
    color: var(--autoris-text-muted);
    display: grid;
    font-size: 12px;
    gap: 4px;
    min-width: min(520px, 100%);
}

.autoris-monitor-remote > div {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.autoris-remote-input-pill {
    background: var(--autoris-surface-soft);
    border: 1px solid var(--autoris-border);
    border-radius: 999px;
    color: var(--autoris-text-muted);
    display: inline-flex;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    padding: 6px 10px;
}

.autoris-remote-input-pill.is-active {
    background: var(--autoris-success-bg);
    border-color: color-mix(in srgb, var(--autoris-success) 35%, var(--autoris-border));
    color: var(--autoris-success);
}

.autoris-remote-input-pill.is-error {
    background: var(--autoris-danger-bg);
    border-color: color-mix(in srgb, var(--autoris-danger) 35%, var(--autoris-border));
    color: var(--autoris-danger);
}

.autoris-monitor-controls {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.autoris-apps-modal {
    border: 0;
    border-radius: 8px;
    box-shadow: var(--autoris-shadow-hover);
}

.autoris-apps-modal .modal-header,
.autoris-capabilities-modal .modal-header,
.autoris-monitor-modal .modal-header,
.autoris-apk-modal .modal-header {
    background: var(--autoris-surface-soft);
}

.autoris-apps-dialog {
    max-width: min(1180px, calc(100vw - 28px));
}

.autoris-apps-toolbar {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 12px;
}

.autoris-apps-search {
    display: grid;
    flex: 1;
    gap: 8px;
    grid-template-columns: minmax(220px, 1fr) 160px;
}

.autoris-apps-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.autoris-apps-summary {
    color: var(--autoris-text-muted);
    font-size: 13px;
    margin-bottom: 10px;
}

.autoris-apps-bulk {
    align-items: center;
    background: var(--autoris-surface-soft);
    border: 1px solid var(--autoris-border);
    border-radius: 8px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 10px;
    padding: 8px;
}

.autoris-apps-bulk span {
    color: var(--autoris-text-muted);
    font-size: 12px;
    font-weight: 700;
    margin-left: 4px;
}

.autoris-android-restrictions {
    align-items: center;
    background: var(--autoris-surface);
    border: 1px solid var(--autoris-border);
    border-radius: 8px;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 10px;
    padding: 10px 12px;
}

.autoris-android-restrictions.is-active {
    border-color: color-mix(in srgb, var(--autoris-danger) 34%, var(--autoris-border));
    box-shadow: inset 3px 0 0 var(--autoris-danger);
}

.autoris-android-restrictions-label {
    color: var(--autoris-text);
    display: block;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.25;
}

.autoris-android-restrictions small {
    color: var(--autoris-text-muted);
    display: block;
    font-size: 12px;
    line-height: 1.35;
    margin-top: 2px;
}

.autoris-android-restrictions-detail {
    background: var(--autoris-surface-soft);
    border: 1px solid var(--autoris-border);
    border-radius: 8px;
    margin-bottom: 10px;
    padding: 9px 12px;
}

.autoris-android-restrictions-detail summary {
    color: var(--autoris-text);
    cursor: pointer;
    font-size: 13px;
    font-weight: 800;
}

.autoris-android-restrictions-grid {
    display: grid;
    gap: 8px 12px;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    margin-top: 10px;
}

.autoris-android-restrictions-grid label {
    align-items: center;
    color: var(--autoris-text);
    display: inline-flex;
    font-size: 12px;
    gap: 7px;
}

.autoris-android-restrictions-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    margin-top: 10px;
}

.autoris-app-list {
    border: 1px solid var(--autoris-border);
    border-radius: 8px;
    max-height: min(68vh, 680px);
    overflow: auto;
    scrollbar-color: var(--autoris-border) var(--autoris-surface-soft);
}

.autoris-app-row,
.autoris-app-empty {
    align-items: center;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 12px 14px;
}

.autoris-app-row {
    border-bottom: 1px solid #eaecf0;
    transition: background-color .16s ease, box-shadow .16s ease;
}

.autoris-app-row:hover {
    background: #f8fafc;
}

.autoris-app-row:last-child {
    border-bottom: 0;
}

.autoris-app-row.is-blocked {
    background: #fff8f7;
}

.autoris-app-row.is-pinned {
    background: #f4f7fb;
    box-shadow: inset 3px 0 0 #64748b;
}

.autoris-app-title {
    color: #101828;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.25;
    margin-bottom: 3px;
}

.autoris-app-package {
    color: #667085;
    font-size: 12px;
    overflow-wrap: anywhere;
}

.autoris-app-meta {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 7px;
}

.autoris-pill {
    align-items: center;
    background: #f2f4f7;
    border-radius: 999px;
    color: #344054;
    display: inline-flex;
    font-size: 11px;
    font-weight: 700;
    padding: 3px 8px;
}

.autoris-pill-success {
    background: var(--autoris-success-bg);
    color: var(--autoris-success);
}

.autoris-pill-danger {
    background: var(--autoris-danger-bg);
    color: var(--autoris-danger);
}

.autoris-pill-warning {
    background: var(--autoris-warning-bg);
    color: var(--autoris-warning);
}

.autoris-pill-pinned {
    background: #eef2f7;
    color: #334155;
}

.autoris-pill-protected {
    background: #eff8ff;
    color: #175cd3;
}

.autoris-pill-muted {
    background: #f9fafb;
    color: #667085;
}

.autoris-app-policy {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.autoris-app-policy label {
    align-items: center;
    display: inline-flex;
    gap: 6px;
    margin: 0;
    white-space: nowrap;
}

.autoris-capabilities-modal {
    border-radius: 8px;
}

.autoris-capabilities-toolbar {
    display: grid;
    gap: 8px;
    grid-template-columns: auto minmax(220px, 1fr) auto;
    margin-bottom: 12px;
}

.autoris-capabilities-grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.autoris-capability-item {
    border: 1px solid #eaecf0;
    border-radius: 8px;
    padding: 10px 12px;
}

.autoris-capability-item span {
    color: #667085;
    display: block;
    font-size: 12px;
}

.autoris-capability-item strong {
    color: #101828;
    display: block;
    font-size: 14px;
    overflow-wrap: anywhere;
}

.autoris-capabilities-warnings {
    display: grid;
    gap: 8px;
    margin-bottom: 12px;
}

.autoris-engine-recommendation {
    background: #f9fafb;
    border: 1px solid #eaecf0;
    border-radius: 8px;
    margin-bottom: 12px;
    padding: 10px 12px;
}

.autoris-engine-recommendation span {
    color: #667085;
    display: block;
    font-size: 12px;
    font-weight: 700;
}

.autoris-engine-recommendation strong {
    color: #101828;
    display: block;
    font-size: 14px;
    margin-top: 2px;
}

.autoris-engine-recommendation small {
    color: #667085;
    display: block;
    font-size: 12px;
    margin-top: 4px;
}

.autoris-knox-support {
    border-top: 1px solid #eaecf0;
    margin-top: 16px;
    padding-top: 14px;
}

.autoris-knox-support-title {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    margin-bottom: 10px;
}

.autoris-knox-support-title h6 {
    color: #101828;
    font-size: 14px;
    font-weight: 700;
    margin: 0;
}

.autoris-knox-support-title span {
    background: #f2f4f7;
    border-radius: 999px;
    color: #475467;
    font-size: 12px;
    font-weight: 700;
    padding: 4px 8px;
}

.autoris-knox-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 10px;
}

.autoris-knox-actions span {
    color: #667085;
    font-size: 12px;
}

.autoris-knox-support-note {
    background: #fffbeb;
    border: 1px solid #fedf89;
    border-radius: 8px;
    color: #92400e;
    font-size: 12px;
    margin-top: 10px;
    padding: 9px 10px;
}

.autoris-capability-warning {
    background: #fffaeb;
    border: 1px solid #fedf89;
    border-radius: 8px;
    color: #93370d;
    font-size: 13px;
    padding: 9px 11px;
}

@keyframes autoris-spin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 1180px) {
    .autoris-dashboard-grid {
        grid-template-columns: 1fr;
    }

    .autoris-events-panel {
        position: static;
    }

    .autoris-event-log {
        max-height: 320px;
    }
}

@media (max-width: 980px) {
    .autoris-devices-panel {
        padding: 14px;
    }

    .autoris-devices-panel .table,
    .autoris-devices-panel .table tbody,
    .autoris-devices-panel .table tr,
    .autoris-devices-panel .table td {
        display: block;
        width: 100%;
    }

    .autoris-devices-panel .table thead {
        display: none;
    }

    .autoris-devices-panel .table {
        border-spacing: 0;
    }

    .autoris-devices-panel .table tbody tr {
        border: 1px solid var(--autoris-border);
        border-radius: 8px;
        margin-bottom: 12px;
        overflow: hidden;
    }

    .autoris-devices-panel .table tbody td {
        align-items: flex-start;
        border-width: 0 0 1px;
        display: flex;
        gap: 14px;
        justify-content: space-between;
        padding: 12px;
        text-align: left !important;
    }

    .autoris-devices-panel .table tbody td::before {
        color: var(--autoris-muted);
        content: attr(data-label);
        flex: 0 0 132px;
        font-size: 11px;
        font-weight: 800;
        letter-spacing: .04em;
        text-transform: uppercase;
    }

    .autoris-devices-panel .table tbody tr.is-empty td::before {
        display: none;
    }

    .autoris-devices-panel .table tbody td:first-child,
    .autoris-devices-panel .table tbody td:last-child {
        border-radius: 0;
    }

    .autoris-device-row td:first-child::before {
        content: "";
        flex: none;
    }

    .autoris-device-cell {
        flex: 1;
        min-width: 0;
    }

    .autoris-device-actions {
        grid-template-columns: repeat(2, 42px);
        justify-content: flex-start;
        min-width: 0;
        width: auto;
    }
}

@media (max-width: 800px) {
    .autoris-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .autoris-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .autoris-dashboard-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .autoris-panel-title {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
    }

    .autoris-panel-summary-chips {
        justify-content: flex-start;
    }

    .autoris-panel-header-aside {
        align-items: flex-start;
        width: 100%;
    }

    .autoris-events-panel--compact {
        max-width: 100%;
    }

    .autoris-event {
        grid-template-columns: 10px minmax(0, 1fr);
        gap: 8px;
    }

    .autoris-screenshot-thumb {
        flex-basis: 72px;
        height: 116px;
        width: 72px;
    }

    .autoris-devices-panel .table tbody td {
        display: block;
    }

    .autoris-devices-panel .table tbody td::before {
        display: block;
        margin-bottom: 7px;
    }

    .autoris-device-row td:first-child::before {
        bottom: 12px;
        display: block;
        margin-bottom: 0;
        top: 12px;
    }

    .autoris-device-cell {
        align-items: flex-start;
    }

    .autoris-command-controls {
        grid-template-columns: 1fr;
    }

    .autoris-bulk-message-grid {
        grid-template-columns: 1fr;
    }

    .autoris-qr-layout {
        grid-template-columns: 1fr;
    }

    .autoris-monitor-dialog,
    .autoris-apps-dialog {
        max-width: calc(100vw - 12px);
    }

    .autoris-monitor-stage {
        aspect-ratio: var(--stream-aspect-ratio, 10 / 16);
        max-height: calc(100vh - 190px);
        min-height: 360px;
    }

    .autoris-apps-toolbar,
    .autoris-apps-bulk,
    .autoris-apps-actions,
    .autoris-android-restrictions {
        align-items: stretch;
        flex-direction: column;
    }

    .autoris-apps-search,
    .autoris-app-row,
    .autoris-app-empty {
        grid-template-columns: 1fr;
    }

    .autoris-app-policy {
        justify-content: flex-start;
    }

    .autoris-capabilities-toolbar,
    .autoris-capabilities-grid {
        grid-template-columns: 1fr;
    }

    .autoris-web-policy-layout,
    .autoris-web-policy-rule,
    .autoris-web-policy-keyword {
        grid-template-columns: 1fr;
    }

    .autoris-web-policy-audit {
        border-left: 0;
        border-top: 1px solid var(--autoris-border);
    }

    .autoris-web-policy-heading,
    .autoris-web-policy-rules-header {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Visual refresh 2026: layout, theme system and shared admin components. */
html[data-theme-color="blue"],
html[data-theme-color="blue"] body {
    --autoris-primary: #1B3AA0;
    --autoris-primary-hover: #142d7a;
    --autoris-primary-strong: #10245f;
    --autoris-accent: #1B3AA0;
    --autoris-accent-soft: rgba(27, 58, 160, 0.12);
    --autoris-focus-ring: rgba(27, 58, 160, 0.24);
    --autoris-sidebar-bg: #1B3AA0;
    --autoris-sidebar-border: #1B3AA0;
    --autoris-sidebar-hover: rgba(255, 255, 255, 0.11);
    --autoris-sidebar-active-bg: rgba(255, 255, 255, 0.16);
    --autoris-sidebar-active-border: #8ba2ee;
    --autoris-sidebar-text: #eef5ff;
    --autoris-sidebar-muted: #b7c9e8;
    --autoris-sidebar-icon: #c6d7f1;
    --autoris-button-primary: #3f579a;
    --autoris-button-primary-hover: #32477f;
    --autoris-button-primary-soft: rgba(63, 87, 154, 0.12);
    --autoris-button-info: #3c7385;
    --autoris-button-info-hover: #315f6e;
    --autoris-button-info-soft: rgba(60, 115, 133, 0.12);
    --autoris-button-success: #3b786d;
    --autoris-button-success-hover: #30645b;
    --autoris-button-success-soft: rgba(59, 120, 109, 0.12);
    --autoris-button-monitor: #4a6598;
    --autoris-button-monitor-hover: #3b527d;
    --autoris-button-command: #5b6577;
    --autoris-button-command-hover: #485263;
}

html[data-theme-color="red"],
html[data-theme-color="red"] body {
    --autoris-primary: #9E1F32;
    --autoris-primary-hover: #7c1828;
    --autoris-primary-strong: #5e1220;
    --autoris-accent: #9E1F32;
    --autoris-accent-soft: rgba(158, 31, 50, 0.12);
    --autoris-focus-ring: rgba(158, 31, 50, 0.24);
    --autoris-sidebar-bg: #9E1F32;
    --autoris-sidebar-border: #9E1F32;
    --autoris-sidebar-hover: rgba(255, 255, 255, 0.11);
    --autoris-sidebar-active-bg: rgba(255, 255, 255, 0.16);
    --autoris-sidebar-active-border: #e79aa6;
    --autoris-sidebar-text: #fff1f2;
    --autoris-sidebar-muted: #f1b5bb;
    --autoris-sidebar-icon: #f6c7cb;
    --autoris-button-primary: #9d5561;
    --autoris-button-primary-hover: #82424d;
    --autoris-button-primary-soft: rgba(157, 85, 97, 0.12);
    --autoris-button-info: #5b7189;
    --autoris-button-info-hover: #485e73;
    --autoris-button-info-soft: rgba(91, 113, 137, 0.12);
    --autoris-button-success: #557a65;
    --autoris-button-success-hover: #466654;
    --autoris-button-success-soft: rgba(85, 122, 101, 0.12);
    --autoris-button-monitor: #735e86;
    --autoris-button-monitor-hover: #5e4c70;
    --autoris-button-command: #6f665b;
    --autoris-button-command-hover: #5a524a;
}

html[data-theme-color="purple"],
html[data-theme-color="purple"] body {
    --autoris-primary: #4A1BA4;
    --autoris-primary-hover: #37147b;
    --autoris-primary-strong: #2b1060;
    --autoris-accent: #4A1BA4;
    --autoris-accent-soft: rgba(74, 27, 164, 0.12);
    --autoris-focus-ring: rgba(74, 27, 164, 0.24);
    --autoris-sidebar-bg: #4A1BA4;
    --autoris-sidebar-border: #4A1BA4;
    --autoris-sidebar-hover: rgba(255, 255, 255, 0.11);
    --autoris-sidebar-active-bg: rgba(255, 255, 255, 0.16);
    --autoris-sidebar-active-border: #b49be4;
    --autoris-sidebar-text: #f5f3ff;
    --autoris-sidebar-muted: #c9bdf1;
    --autoris-sidebar-icon: #d8cff7;
    --autoris-button-primary: #68459f;
    --autoris-button-primary-hover: #563682;
    --autoris-button-primary-soft: rgba(104, 69, 159, 0.12);
    --autoris-button-info: #4d6d91;
    --autoris-button-info-hover: #3f5a78;
    --autoris-button-info-soft: rgba(77, 109, 145, 0.12);
    --autoris-button-success: #4f7a6c;
    --autoris-button-success-hover: #416457;
    --autoris-button-success-soft: rgba(79, 122, 108, 0.12);
    --autoris-button-monitor: #63589b;
    --autoris-button-monitor-hover: #51477f;
    --autoris-button-command: #635d74;
    --autoris-button-command-hover: #504b60;
}

html[data-theme-color="teal"],
html[data-theme-color="teal"] body {
    --autoris-primary: #247674;
    --autoris-primary-hover: #1a5b58;
    --autoris-primary-strong: #154946;
    --autoris-accent: #247674;
    --autoris-accent-soft: rgba(36, 118, 116, 0.12);
    --autoris-focus-ring: rgba(36, 118, 116, 0.24);
    --autoris-sidebar-bg: #247674;
    --autoris-sidebar-border: #247674;
    --autoris-sidebar-hover: rgba(255, 255, 255, 0.11);
    --autoris-sidebar-active-bg: rgba(255, 255, 255, 0.16);
    --autoris-sidebar-active-border: #9bd6d3;
    --autoris-sidebar-text: #ecfeff;
    --autoris-sidebar-muted: #a9e5dc;
    --autoris-sidebar-icon: #bff2ec;
    --autoris-button-primary: #3d817e;
    --autoris-button-primary-hover: #316a68;
    --autoris-button-primary-soft: rgba(61, 129, 126, 0.12);
    --autoris-button-info: #3f7183;
    --autoris-button-info-hover: #345d6c;
    --autoris-button-info-soft: rgba(63, 113, 131, 0.12);
    --autoris-button-success: #4a8067;
    --autoris-button-success-hover: #3c6a55;
    --autoris-button-success-soft: rgba(74, 128, 103, 0.12);
    --autoris-button-monitor: #4a6d86;
    --autoris-button-monitor-hover: #3d596d;
    --autoris-button-command: #586f6f;
    --autoris-button-command-hover: #485b5b;
}

html[data-theme-mode="dark"][data-theme-color="blue"],
html[data-theme-mode="dark"][data-theme-color="blue"] body {
    --autoris-primary: #1B3AA0;
    --autoris-primary-hover: #274bb5;
    --autoris-primary-strong: #10245f;
    --autoris-accent: #1B3AA0;
    --autoris-accent-soft: rgba(27, 58, 160, 0.24);
    --autoris-focus-ring: rgba(27, 58, 160, 0.32);
    --autoris-sidebar-bg: #1B3AA0;
    --autoris-sidebar-border: #1B3AA0;
    --autoris-sidebar-hover: rgba(255, 255, 255, 0.11);
    --autoris-sidebar-active-bg: rgba(255, 255, 255, 0.16);
    --autoris-sidebar-active-border: #8ba2ee;
    --autoris-sidebar-text: #eef5ff;
    --autoris-sidebar-muted: #a9bddb;
    --autoris-sidebar-icon: #bfd0eb;
    --autoris-button-primary: #5068a8;
    --autoris-button-primary-hover: #6179b8;
    --autoris-button-primary-soft: rgba(80, 104, 168, 0.18);
    --autoris-button-info: #4f8090;
    --autoris-button-info-hover: #6090a0;
    --autoris-button-info-soft: rgba(79, 128, 144, 0.18);
    --autoris-button-success: #4e897c;
    --autoris-button-success-hover: #5b9a8c;
    --autoris-button-success-soft: rgba(78, 137, 124, 0.18);
    --autoris-button-monitor: #5a73a3;
    --autoris-button-monitor-hover: #6a83b3;
    --autoris-button-command: #657083;
    --autoris-button-command-hover: #758093;
}

html[data-theme-mode="dark"][data-theme-color="red"],
html[data-theme-mode="dark"][data-theme-color="red"] body {
    --autoris-primary: #9E1F32;
    --autoris-primary-hover: #b92a3f;
    --autoris-primary-strong: #5e1220;
    --autoris-accent: #9E1F32;
    --autoris-accent-soft: rgba(158, 31, 50, 0.24);
    --autoris-focus-ring: rgba(158, 31, 50, 0.32);
    --autoris-sidebar-bg: #9E1F32;
    --autoris-sidebar-border: #9E1F32;
    --autoris-sidebar-hover: rgba(255, 255, 255, 0.11);
    --autoris-sidebar-active-bg: rgba(255, 255, 255, 0.16);
    --autoris-sidebar-active-border: #e79aa6;
    --autoris-sidebar-text: #fff1f2;
    --autoris-sidebar-muted: #e9adb4;
    --autoris-sidebar-icon: #f2c3c7;
    --autoris-button-primary: #a85d69;
    --autoris-button-primary-hover: #b86d78;
    --autoris-button-primary-soft: rgba(168, 93, 105, 0.18);
    --autoris-button-info: #5f7f94;
    --autoris-button-info-hover: #6f8fa3;
    --autoris-button-info-soft: rgba(95, 127, 148, 0.18);
    --autoris-button-success: #5b8a74;
    --autoris-button-success-hover: #6a9a83;
    --autoris-button-success-soft: rgba(91, 138, 116, 0.18);
    --autoris-button-monitor: #806993;
    --autoris-button-monitor-hover: #9079a3;
    --autoris-button-command: #766c60;
    --autoris-button-command-hover: #867c70;
}

html[data-theme-mode="dark"][data-theme-color="purple"],
html[data-theme-mode="dark"][data-theme-color="purple"] body {
    --autoris-primary: #4A1BA4;
    --autoris-primary-hover: #5b25bd;
    --autoris-primary-strong: #2b1060;
    --autoris-accent: #4A1BA4;
    --autoris-accent-soft: rgba(74, 27, 164, 0.24);
    --autoris-focus-ring: rgba(74, 27, 164, 0.32);
    --autoris-sidebar-bg: #4A1BA4;
    --autoris-sidebar-border: #4A1BA4;
    --autoris-sidebar-hover: rgba(255, 255, 255, 0.11);
    --autoris-sidebar-active-bg: rgba(255, 255, 255, 0.16);
    --autoris-sidebar-active-border: #b49be4;
    --autoris-sidebar-text: #f5f3ff;
    --autoris-sidebar-muted: #c8bdeb;
    --autoris-sidebar-icon: #d9d0f7;
    --autoris-button-primary: #7653aa;
    --autoris-button-primary-hover: #8764ba;
    --autoris-button-primary-soft: rgba(118, 83, 170, 0.18);
    --autoris-button-info: #5b789a;
    --autoris-button-info-hover: #6b88aa;
    --autoris-button-info-soft: rgba(91, 120, 154, 0.18);
    --autoris-button-success: #5a8979;
    --autoris-button-success-hover: #6a9989;
    --autoris-button-success-soft: rgba(90, 137, 121, 0.18);
    --autoris-button-monitor: #7065a5;
    --autoris-button-monitor-hover: #8176b5;
    --autoris-button-command: #716a82;
    --autoris-button-command-hover: #827a93;
}

html[data-theme-mode="dark"][data-theme-color="teal"],
html[data-theme-mode="dark"][data-theme-color="teal"] body {
    --autoris-primary: #247674;
    --autoris-primary-hover: #2a8b87;
    --autoris-primary-strong: #154946;
    --autoris-accent: #247674;
    --autoris-accent-soft: rgba(36, 118, 116, 0.24);
    --autoris-focus-ring: rgba(36, 118, 116, 0.32);
    --autoris-sidebar-bg: #247674;
    --autoris-sidebar-border: #247674;
    --autoris-sidebar-hover: rgba(255, 255, 255, 0.11);
    --autoris-sidebar-active-bg: rgba(255, 255, 255, 0.16);
    --autoris-sidebar-active-border: #9bd6d3;
    --autoris-sidebar-text: #ecfeff;
    --autoris-sidebar-muted: #a4ded7;
    --autoris-sidebar-icon: #c2f3ec;
    --autoris-button-primary: #4a8c89;
    --autoris-button-primary-hover: #5a9b98;
    --autoris-button-primary-soft: rgba(74, 140, 137, 0.18);
    --autoris-button-info: #507f91;
    --autoris-button-info-hover: #6090a1;
    --autoris-button-info-soft: rgba(80, 127, 145, 0.18);
    --autoris-button-success: #5c8d75;
    --autoris-button-success-hover: #6d9d85;
    --autoris-button-success-soft: rgba(92, 141, 117, 0.18);
    --autoris-button-monitor: #557a91;
    --autoris-button-monitor-hover: #668aa1;
    --autoris-button-command: #657c7c;
    --autoris-button-command-hover: #758c8c;
}

/* Firm theme palette: shared application colors mapped to Autoris components. */
html[data-theme-color="blue"],
html[data-theme-color="blue"] body {
    --theme-primary: #1B3AA0;
    --theme-secondary: #3556B6;
    --theme-tertiary: #5874C6;
    --theme-light: #E3EAFB;
    --theme-link: #4868D3;
    --autoris-bg: #F5F7FC;
    --autoris-bg-soft: #E3EAFB;
    --autoris-surface: #FFFFFF;
    --autoris-surface-soft: #E3EAFB;
    --autoris-surface-elevated: #FFFFFF;
    --autoris-text: #172033;
    --autoris-text-muted: #5f6f91;
    --autoris-border: rgba(0, 0, 0, 0.06);
    --autoris-border-soft: rgba(0, 0, 0, 0.04);
    --autoris-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-shadow-hover: 0 8px 22px rgba(0, 0, 0, 0.16);
    --autoris-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.08);
    --autoris-primary: #1B3AA0;
    --autoris-primary-hover: #3556B6;
    --autoris-primary-strong: #142d7a;
    --autoris-accent: #3556B6;
    --autoris-accent-soft: #E3EAFB;
    --autoris-focus-ring: rgba(72, 104, 211, 0.26);
    --autoris-sidebar-bg: #1B3AA0;
    --autoris-sidebar-border: #1B3AA0;
    --autoris-sidebar-active-border: #E3EAFB;
    --autoris-button-primary: #1B3AA0;
    --autoris-button-primary-hover: #3556B6;
    --autoris-button-primary-soft: #E3EAFB;
    --autoris-button-secondary: #3556B6;
    --autoris-button-secondary-hover: #1B3AA0;
    --autoris-button-secondary-soft: rgba(53, 86, 182, 0.16);
    --autoris-button-tertiary: #5874C6;
    --autoris-button-tertiary-hover: #3556B6;
    --autoris-button-light: #E3EAFB;
    --autoris-button-link: #4868D3;
    --autoris-button-info: #3556B6;
    --autoris-button-info-hover: #1B3AA0;
    --autoris-button-info-soft: rgba(53, 86, 182, 0.16);
    --autoris-button-success: #2E9D73;
    --autoris-button-success-hover: #247d5c;
    --autoris-button-success-soft: rgba(46, 157, 115, 0.16);
    --autoris-button-monitor: #5874C6;
    --autoris-button-monitor-hover: #3556B6;
    --autoris-button-command: #4868D3;
    --autoris-button-command-hover: #3556B6;
}

html[data-theme-color="red"],
html[data-theme-color="red"] body {
    --theme-primary: #9E1F32;
    --theme-secondary: #B13B4C;
    --theme-tertiary: #C86372;
    --theme-light: #F7E6E8;
    --theme-link: #B94B5B;
    --autoris-bg: #FBF6F7;
    --autoris-bg-soft: #F7E6E8;
    --autoris-surface: #FFFFFF;
    --autoris-surface-soft: #F7E6E8;
    --autoris-surface-elevated: #FFFFFF;
    --autoris-text: #211619;
    --autoris-text-muted: #7d5d63;
    --autoris-border: rgba(0, 0, 0, 0.06);
    --autoris-border-soft: rgba(0, 0, 0, 0.04);
    --autoris-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-shadow-hover: 0 8px 22px rgba(0, 0, 0, 0.16);
    --autoris-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.08);
    --autoris-primary: #9E1F32;
    --autoris-primary-hover: #B13B4C;
    --autoris-primary-strong: #7c1828;
    --autoris-accent: #B13B4C;
    --autoris-accent-soft: #F7E6E8;
    --autoris-focus-ring: rgba(185, 75, 91, 0.26);
    --autoris-sidebar-bg: #9E1F32;
    --autoris-sidebar-border: #9E1F32;
    --autoris-sidebar-active-border: #F7E6E8;
    --autoris-button-primary: #9E1F32;
    --autoris-button-primary-hover: #B13B4C;
    --autoris-button-primary-soft: #F7E6E8;
    --autoris-button-secondary: #B13B4C;
    --autoris-button-secondary-hover: #9E1F32;
    --autoris-button-secondary-soft: rgba(177, 59, 76, 0.16);
    --autoris-button-tertiary: #C86372;
    --autoris-button-tertiary-hover: #B13B4C;
    --autoris-button-light: #F7E6E8;
    --autoris-button-link: #B94B5B;
    --autoris-button-info: #B13B4C;
    --autoris-button-info-hover: #9E1F32;
    --autoris-button-info-soft: rgba(177, 59, 76, 0.16);
    --autoris-button-success: #2E9D73;
    --autoris-button-success-hover: #247d5c;
    --autoris-button-success-soft: rgba(46, 157, 115, 0.16);
    --autoris-button-monitor: #C86372;
    --autoris-button-monitor-hover: #B13B4C;
    --autoris-button-command: #B94B5B;
    --autoris-button-command-hover: #9E1F32;
}

html[data-theme-color="purple"],
html[data-theme-color="purple"] body {
    --theme-primary: #4A1BA4;
    --theme-secondary: #6240B4;
    --theme-tertiary: #8067C7;
    --theme-light: #ECE7FA;
    --theme-link: #7254D4;
    --autoris-bg: #F8F6FD;
    --autoris-bg-soft: #ECE7FA;
    --autoris-surface: #FFFFFF;
    --autoris-surface-soft: #ECE7FA;
    --autoris-surface-elevated: #FFFFFF;
    --autoris-text: #1c1727;
    --autoris-text-muted: #6d5f8a;
    --autoris-border: rgba(0, 0, 0, 0.06);
    --autoris-border-soft: rgba(0, 0, 0, 0.04);
    --autoris-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-shadow-hover: 0 8px 22px rgba(0, 0, 0, 0.16);
    --autoris-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.08);
    --autoris-primary: #4A1BA4;
    --autoris-primary-hover: #6240B4;
    --autoris-primary-strong: #37147b;
    --autoris-accent: #6240B4;
    --autoris-accent-soft: #ECE7FA;
    --autoris-focus-ring: rgba(114, 84, 212, 0.26);
    --autoris-sidebar-bg: #4A1BA4;
    --autoris-sidebar-border: #4A1BA4;
    --autoris-sidebar-active-border: #ECE7FA;
    --autoris-button-primary: #4A1BA4;
    --autoris-button-primary-hover: #6240B4;
    --autoris-button-primary-soft: #ECE7FA;
    --autoris-button-secondary: #6240B4;
    --autoris-button-secondary-hover: #4A1BA4;
    --autoris-button-secondary-soft: rgba(98, 64, 180, 0.16);
    --autoris-button-tertiary: #8067C7;
    --autoris-button-tertiary-hover: #6240B4;
    --autoris-button-light: #ECE7FA;
    --autoris-button-link: #7254D4;
    --autoris-button-info: #6240B4;
    --autoris-button-info-hover: #4A1BA4;
    --autoris-button-info-soft: rgba(98, 64, 180, 0.16);
    --autoris-button-success: #2E9D73;
    --autoris-button-success-hover: #247d5c;
    --autoris-button-success-soft: rgba(46, 157, 115, 0.16);
    --autoris-button-monitor: #8067C7;
    --autoris-button-monitor-hover: #6240B4;
    --autoris-button-command: #7254D4;
    --autoris-button-command-hover: #4A1BA4;
}

html[data-theme-color="teal"],
html[data-theme-color="teal"] body {
    --theme-primary: #247674;
    --theme-secondary: #3C8A88;
    --theme-tertiary: #5DA3A1;
    --theme-light: #DCEFED;
    --theme-link: #2F8E8C;
    --autoris-bg: #F4F9F8;
    --autoris-bg-soft: #DCEFED;
    --autoris-surface: #FFFFFF;
    --autoris-surface-soft: #DCEFED;
    --autoris-surface-elevated: #FFFFFF;
    --autoris-text: #152221;
    --autoris-text-muted: #55706d;
    --autoris-border: rgba(0, 0, 0, 0.06);
    --autoris-border-soft: rgba(0, 0, 0, 0.04);
    --autoris-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-shadow-hover: 0 8px 22px rgba(0, 0, 0, 0.16);
    --autoris-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.08);
    --autoris-primary: #247674;
    --autoris-primary-hover: #3C8A88;
    --autoris-primary-strong: #1a5b58;
    --autoris-accent: #3C8A88;
    --autoris-accent-soft: #DCEFED;
    --autoris-focus-ring: rgba(47, 142, 140, 0.26);
    --autoris-sidebar-bg: #247674;
    --autoris-sidebar-border: #247674;
    --autoris-sidebar-active-border: #DCEFED;
    --autoris-button-primary: #247674;
    --autoris-button-primary-hover: #3C8A88;
    --autoris-button-primary-soft: #DCEFED;
    --autoris-button-secondary: #3C8A88;
    --autoris-button-secondary-hover: #247674;
    --autoris-button-secondary-soft: rgba(60, 138, 136, 0.16);
    --autoris-button-tertiary: #5DA3A1;
    --autoris-button-tertiary-hover: #3C8A88;
    --autoris-button-light: #DCEFED;
    --autoris-button-link: #2F8E8C;
    --autoris-button-info: #3C8A88;
    --autoris-button-info-hover: #247674;
    --autoris-button-info-soft: rgba(60, 138, 136, 0.16);
    --autoris-button-success: #2E9D73;
    --autoris-button-success-hover: #247d5c;
    --autoris-button-success-soft: rgba(46, 157, 115, 0.16);
    --autoris-button-monitor: #5DA3A1;
    --autoris-button-monitor-hover: #3C8A88;
    --autoris-button-command: #2F8E8C;
    --autoris-button-command-hover: #247674;
}

html[data-theme-mode="dark"][data-theme-color="blue"],
html[data-theme-mode="dark"][data-theme-color="blue"] body {
    --theme-primary: #1B3AA0;
    --theme-secondary: #3556B6;
    --theme-tertiary: #5874C6;
    --theme-light: #E3EAFB;
    --theme-link: #4868D3;
    --autoris-bg: #131A2C;
    --autoris-bg-soft: #121212;
    --autoris-surface: #1B2337;
    --autoris-surface-soft: #222A3E;
    --autoris-surface-elevated: #26304A;
    --autoris-text: #EDF2FF;
    --autoris-text-muted: #B6C4F0;
    --autoris-border: rgba(255, 255, 255, 0.06);
    --autoris-border-soft: rgba(255, 255, 255, 0.04);
    --autoris-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-shadow-hover: 0 10px 26px rgba(0, 0, 0, 0.28);
    --autoris-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-table-bg: #1B2337;
    --autoris-table-hover: #222A3E;
    --autoris-modal-bg: #1B2337;
    --autoris-dropdown-bg: #1B2337;
    --autoris-navbar-bg: #1B2337;
    --autoris-badge-bg: rgba(255, 255, 255, 0.08);
    --autoris-badge-text: #EDF2FF;
    --autoris-primary: #1B3AA0;
    --autoris-primary-hover: #3556B6;
    --autoris-primary-strong: #142d7a;
    --autoris-accent: #3556B6;
    --autoris-accent-soft: rgba(88, 116, 198, 0.24);
    --autoris-focus-ring: rgba(72, 104, 211, 0.32);
    --autoris-sidebar-bg: #1B3AA0;
    --autoris-sidebar-border: #1B3AA0;
    --autoris-sidebar-active-border: #E3EAFB;
    --autoris-button-primary: #1B3AA0;
    --autoris-button-primary-hover: #3556B6;
    --autoris-button-primary-soft: rgba(88, 116, 198, 0.24);
    --autoris-button-secondary: #3556B6;
    --autoris-button-secondary-hover: #5874C6;
    --autoris-button-secondary-soft: rgba(53, 86, 182, 0.22);
    --autoris-button-tertiary: #5874C6;
    --autoris-button-tertiary-hover: #3556B6;
    --autoris-button-light: #E3EAFB;
    --autoris-button-link: #4868D3;
    --autoris-button-info: #3556B6;
    --autoris-button-info-hover: #5874C6;
    --autoris-button-info-soft: rgba(53, 86, 182, 0.22);
    --autoris-button-success: #2E9D73;
    --autoris-button-success-hover: #38b985;
    --autoris-button-success-soft: rgba(46, 157, 115, 0.22);
    --autoris-button-monitor: #5874C6;
    --autoris-button-monitor-hover: #8067C7;
    --autoris-button-command: #4868D3;
    --autoris-button-command-hover: #5874C6;
}

html[data-theme-mode="dark"][data-theme-color="red"],
html[data-theme-mode="dark"][data-theme-color="red"] body {
    --theme-primary: #9E1F32;
    --theme-secondary: #B13B4C;
    --theme-tertiary: #C86372;
    --theme-light: #F7E6E8;
    --theme-link: #B94B5B;
    --autoris-bg: #231517;
    --autoris-bg-soft: #121212;
    --autoris-surface: #2C1A1D;
    --autoris-surface-soft: #392126;
    --autoris-surface-elevated: #44282e;
    --autoris-text: #FFF4F5;
    --autoris-text-muted: #DDB7BC;
    --autoris-border: rgba(255, 255, 255, 0.06);
    --autoris-border-soft: rgba(255, 255, 255, 0.04);
    --autoris-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-shadow-hover: 0 10px 26px rgba(0, 0, 0, 0.28);
    --autoris-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-table-bg: #2C1A1D;
    --autoris-table-hover: #392126;
    --autoris-modal-bg: #2C1A1D;
    --autoris-dropdown-bg: #2C1A1D;
    --autoris-navbar-bg: #2C1A1D;
    --autoris-badge-bg: rgba(255, 255, 255, 0.08);
    --autoris-badge-text: #FFF4F5;
    --autoris-primary: #9E1F32;
    --autoris-primary-hover: #B13B4C;
    --autoris-primary-strong: #7c1828;
    --autoris-accent: #B13B4C;
    --autoris-accent-soft: rgba(200, 99, 114, 0.24);
    --autoris-focus-ring: rgba(185, 75, 91, 0.32);
    --autoris-sidebar-bg: #9E1F32;
    --autoris-sidebar-border: #9E1F32;
    --autoris-sidebar-active-border: #F7E6E8;
    --autoris-button-primary: #9E1F32;
    --autoris-button-primary-hover: #B13B4C;
    --autoris-button-primary-soft: rgba(200, 99, 114, 0.24);
    --autoris-button-secondary: #B13B4C;
    --autoris-button-secondary-hover: #C86372;
    --autoris-button-secondary-soft: rgba(177, 59, 76, 0.22);
    --autoris-button-tertiary: #C86372;
    --autoris-button-tertiary-hover: #B13B4C;
    --autoris-button-light: #F7E6E8;
    --autoris-button-link: #B94B5B;
    --autoris-button-info: #B13B4C;
    --autoris-button-info-hover: #C86372;
    --autoris-button-info-soft: rgba(177, 59, 76, 0.22);
    --autoris-button-success: #2E9D73;
    --autoris-button-success-hover: #38b985;
    --autoris-button-success-soft: rgba(46, 157, 115, 0.22);
    --autoris-button-monitor: #C86372;
    --autoris-button-monitor-hover: #B13B4C;
    --autoris-button-command: #B94B5B;
    --autoris-button-command-hover: #C86372;
}

html[data-theme-mode="dark"][data-theme-color="purple"],
html[data-theme-mode="dark"][data-theme-color="purple"] body {
    --theme-primary: #4A1BA4;
    --theme-secondary: #6240B4;
    --theme-tertiary: #8067C7;
    --theme-light: #ECE7FA;
    --theme-link: #7254D4;
    --autoris-bg: #181320;
    --autoris-bg-soft: #121212;
    --autoris-surface: #221A2F;
    --autoris-surface-soft: #2C2140;
    --autoris-surface-elevated: #37294f;
    --autoris-text: #F5F2FF;
    --autoris-text-muted: #CBC0E9;
    --autoris-border: rgba(255, 255, 255, 0.06);
    --autoris-border-soft: rgba(255, 255, 255, 0.04);
    --autoris-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-shadow-hover: 0 10px 26px rgba(0, 0, 0, 0.28);
    --autoris-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-table-bg: #221A2F;
    --autoris-table-hover: #2C2140;
    --autoris-modal-bg: #221A2F;
    --autoris-dropdown-bg: #221A2F;
    --autoris-navbar-bg: #221A2F;
    --autoris-badge-bg: rgba(255, 255, 255, 0.08);
    --autoris-badge-text: #F5F2FF;
    --autoris-primary: #4A1BA4;
    --autoris-primary-hover: #6240B4;
    --autoris-primary-strong: #37147b;
    --autoris-accent: #6240B4;
    --autoris-accent-soft: rgba(128, 103, 199, 0.24);
    --autoris-focus-ring: rgba(114, 84, 212, 0.32);
    --autoris-sidebar-bg: #4A1BA4;
    --autoris-sidebar-border: #4A1BA4;
    --autoris-sidebar-active-border: #ECE7FA;
    --autoris-button-primary: #4A1BA4;
    --autoris-button-primary-hover: #6240B4;
    --autoris-button-primary-soft: rgba(128, 103, 199, 0.24);
    --autoris-button-secondary: #6240B4;
    --autoris-button-secondary-hover: #8067C7;
    --autoris-button-secondary-soft: rgba(98, 64, 180, 0.22);
    --autoris-button-tertiary: #8067C7;
    --autoris-button-tertiary-hover: #6240B4;
    --autoris-button-light: #ECE7FA;
    --autoris-button-link: #7254D4;
    --autoris-button-info: #6240B4;
    --autoris-button-info-hover: #8067C7;
    --autoris-button-info-soft: rgba(98, 64, 180, 0.22);
    --autoris-button-success: #2E9D73;
    --autoris-button-success-hover: #38b985;
    --autoris-button-success-soft: rgba(46, 157, 115, 0.22);
    --autoris-button-monitor: #8067C7;
    --autoris-button-monitor-hover: #6240B4;
    --autoris-button-command: #7254D4;
    --autoris-button-command-hover: #8067C7;
}

html[data-theme-mode="dark"][data-theme-color="teal"],
html[data-theme-mode="dark"][data-theme-color="teal"] body {
    --theme-primary: #247674;
    --theme-secondary: #3C8A88;
    --theme-tertiary: #5DA3A1;
    --theme-light: #DCEFED;
    --theme-link: #2F8E8C;
    --autoris-bg: #152020;
    --autoris-bg-soft: #121212;
    --autoris-surface: #1D2A2A;
    --autoris-surface-soft: #263434;
    --autoris-surface-elevated: #304040;
    --autoris-text: #E7F4F3;
    --autoris-text-muted: #B7D1CF;
    --autoris-border: rgba(255, 255, 255, 0.06);
    --autoris-border-soft: rgba(255, 255, 255, 0.04);
    --autoris-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-shadow-hover: 0 10px 26px rgba(0, 0, 0, 0.28);
    --autoris-shadow-soft: 0 2px 8px rgba(0, 0, 0, 0.15);
    --autoris-table-bg: #1D2A2A;
    --autoris-table-hover: #263434;
    --autoris-modal-bg: #1D2A2A;
    --autoris-dropdown-bg: #1D2A2A;
    --autoris-navbar-bg: #1D2A2A;
    --autoris-badge-bg: rgba(255, 255, 255, 0.08);
    --autoris-badge-text: #E7F4F3;
    --autoris-primary: #247674;
    --autoris-primary-hover: #3C8A88;
    --autoris-primary-strong: #1a5b58;
    --autoris-accent: #3C8A88;
    --autoris-accent-soft: rgba(93, 163, 161, 0.24);
    --autoris-focus-ring: rgba(47, 142, 140, 0.32);
    --autoris-sidebar-bg: #247674;
    --autoris-sidebar-border: #247674;
    --autoris-sidebar-active-border: #DCEFED;
    --autoris-button-primary: #247674;
    --autoris-button-primary-hover: #3C8A88;
    --autoris-button-primary-soft: rgba(93, 163, 161, 0.24);
    --autoris-button-secondary: #3C8A88;
    --autoris-button-secondary-hover: #5DA3A1;
    --autoris-button-secondary-soft: rgba(60, 138, 136, 0.22);
    --autoris-button-tertiary: #5DA3A1;
    --autoris-button-tertiary-hover: #3C8A88;
    --autoris-button-light: #DCEFED;
    --autoris-button-link: #2F8E8C;
    --autoris-button-info: #3C8A88;
    --autoris-button-info-hover: #5DA3A1;
    --autoris-button-info-soft: rgba(60, 138, 136, 0.22);
    --autoris-button-success: #2E9D73;
    --autoris-button-success-hover: #38b985;
    --autoris-button-success-soft: rgba(46, 157, 115, 0.22);
    --autoris-button-monitor: #5DA3A1;
    --autoris-button-monitor-hover: #3C8A88;
    --autoris-button-command: #2F8E8C;
    --autoris-button-command-hover: #5DA3A1;
}

html[data-theme-color] body {
    --autoris-success: #2E9D73;
    --autoris-success-hover: #247d5c;
    --autoris-success-bg: rgba(46, 157, 115, 0.16);
    --autoris-info: #4A83D8;
    --autoris-info-hover: #356db9;
    --autoris-info-bg: rgba(74, 131, 216, 0.16);
    --autoris-online: #2E9D73;
    --autoris-online-bg: rgba(46, 157, 115, 0.16);
    --autoris-warning: #D4A63B;
    --autoris-warning-hover: #b88b25;
    --autoris-warning-bg: rgba(212, 166, 59, 0.18);
    --autoris-danger: #C4515A;
    --autoris-danger-hover: #9E1F32;
    --autoris-danger-bg: rgba(196, 81, 90, 0.16);
}

:root {
    --autoris-sidebar-width: 276px;
    --autoris-sidebar-collapsed-width: 84px;
    --autoris-topbar-height: 76px;
}

html,
body {
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

body.has-autoris-layout {
    background: var(--autoris-bg) !important;
    overflow-x: hidden;
}

body.has-autoris-layout::before {
    background: var(--autoris-bg);
    content: "";
    inset: 0;
    pointer-events: none;
    position: fixed;
    z-index: -1;
}

.autoris-public-body {
    align-items: center;
    display: block;
    min-height: 100vh;
}

.autoris-public-body .container,
.autoris-public-body .container-fluid {
    max-width: 1140px;
    width: 100%;
}

.autoris-layout-frame {
    min-height: 100vh;
}

.autoris-sidebar {
    background-color: var(--autoris-sidebar-bg, #102a56);
    border-right: 1px solid var(--autoris-sidebar-border, #1e3a68);
    bottom: 0;
    box-shadow: 18px 0 44px rgba(15, 23, 42, 0.18);
    color: #e5edf7;
    display: flex;
    flex-direction: column;
    left: 0;
    overflow: hidden;
    position: fixed;
    top: 0;
    transition: width .18s ease, transform .18s ease;
    width: var(--autoris-sidebar-width);
    z-index: 1045;
}

.autoris-sidebar-header {
    padding: 18px 18px 12px;
}

.autoris-sidebar-brand,
.autoris-sidebar-link,
.autoris-sidebar-logout,
.theme-customizer-toggle {
    align-items: center;
    border-radius: 8px;
    color: var(--autoris-sidebar-text, #eef5ff);
    display: flex;
    gap: 12px;
    min-height: 44px;
    text-decoration: none;
}

.autoris-sidebar-brand:hover,
.autoris-sidebar-link:hover,
.autoris-sidebar-logout:hover,
.theme-customizer-toggle:hover {
    background: var(--autoris-sidebar-hover, #173b78);
    color: #ffffff;
}

.autoris-sidebar-brand-mark {
    align-items: center;
    background: var(--autoris-sidebar-active-bg, var(--autoris-primary));
    border-radius: 8px;
    color: #ffffff;
    display: inline-flex;
    flex: 0 0 42px;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.autoris-sidebar-brand-copy {
    display: grid;
    line-height: 1.1;
    min-width: 0;
}

.autoris-sidebar-brand-copy strong {
    color: #ffffff;
    font-size: 18px;
}

.autoris-sidebar-brand-copy small {
    color: var(--autoris-sidebar-muted, #b7c9e8);
    font-size: 12px;
}

.autoris-sidebar-nav {
    flex: 1;
    overflow-y: auto;
    padding: 6px 14px 16px;
}

.autoris-sidebar-section {
    margin-top: 18px;
}

.autoris-sidebar-section-title {
    color: var(--autoris-sidebar-muted, #b7c9e8);
    display: block;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    margin: 0 10px 8px;
    text-transform: uppercase;
}

.autoris-sidebar-link {
    margin-bottom: 4px;
    padding: 0 12px;
    position: relative;
}

.autoris-sidebar-link i,
.autoris-sidebar-logout i,
.theme-customizer-title i {
    color: var(--autoris-sidebar-icon, #c6d7f1);
    flex: 0 0 20px;
    text-align: center;
}

.autoris-sidebar-link.is-active,
.autoris-sidebar-link:focus-visible {
    background: var(--autoris-sidebar-active-bg, var(--autoris-primary));
    color: #ffffff;
}

.autoris-sidebar-link.is-active i,
.autoris-sidebar-link:focus-visible i {
    color: #ffffff;
}

.autoris-sidebar-link.is-active::before {
    background: var(--autoris-sidebar-active-border, #ffffff);
    border-radius: 999px;
    bottom: 9px;
    content: "";
    left: 3px;
    position: absolute;
    top: 9px;
    width: 3px;
}

.autoris-sidebar-footer {
    border-top: 1px solid var(--autoris-sidebar-border, #1e3a68);
    padding: 14px;
}

.autoris-sidebar-logout {
    margin-top: 10px;
    padding: 0 12px;
}

.theme-customizer-toggle {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(148, 163, 184, 0.20);
    justify-content: space-between;
    padding: 0 12px;
    width: 100%;
}

.theme-customizer-title {
    align-items: center;
    display: inline-flex;
    gap: 12px;
}

.theme-customizer-chevron {
    color: #94a3b8;
    transition: transform .18s ease;
}

.theme-customizer-toggle.is-expanded .theme-customizer-chevron {
    transform: rotate(180deg);
}

.theme-customizer-panel {
    display: grid;
    gap: 10px;
    opacity: 0;
    padding-top: 10px;
    transform: translateY(-4px);
    transition: opacity .18s ease, transform .18s ease;
}

.theme-customizer-panel.is-expanded {
    opacity: 1;
    transform: translateY(0);
}

.theme-customizer-group {
    display: grid;
    gap: 6px;
}

.theme-color-option,
.theme-mode-option,
.autoris-topbar-theme button {
    align-items: center;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 8px;
    color: #dbe7f6;
    display: flex;
    gap: 9px;
    min-height: 34px;
    padding: 6px 9px;
}

.theme-color-option.is-selected,
.theme-mode-option.is-selected,
.autoris-topbar-theme button.is-selected {
    border-color: var(--autoris-button-primary);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--autoris-button-primary) 20%, transparent);
    color: #ffffff;
}

.theme-option-check {
    margin-left: auto;
    opacity: 0;
}

.is-selected .theme-option-check {
    opacity: 1;
}

.theme-swatch {
    border: 2px solid rgba(255, 255, 255, 0.72);
    border-radius: 999px;
    display: inline-block;
    flex: 0 0 16px;
    height: 16px;
    width: 16px;
}

.theme-swatch-blue { background: #1B3AA0; }
.theme-swatch-red { background: #9E1F32; }
.theme-swatch-purple { background: #4A1BA4; }
.theme-swatch-teal { background: #247674; }

.autoris-app-frame {
    margin-left: var(--autoris-sidebar-width);
    min-height: 100vh;
    transition: margin-left .18s ease;
}

.autoris-topbar {
    align-items: center;
    backdrop-filter: blur(14px);
    background: color-mix(in srgb, var(--autoris-surface) 88%, transparent);
    border-bottom: 1px solid var(--autoris-border);
    display: flex;
    gap: 18px;
    justify-content: space-between;
    min-height: var(--autoris-topbar-height);
    padding: 14px 28px;
    position: sticky;
    top: 0;
    z-index: 1030;
}

.autoris-topbar-title {
    display: grid;
    line-height: 1.15;
}

.autoris-topbar-title strong {
    color: var(--autoris-text);
    font-size: 19px;
}

.autoris-topbar-kicker {
    color: var(--autoris-text-muted);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.autoris-topbar-actions {
    align-items: center;
    display: flex;
    gap: 12px;
    min-width: 0;
}

.autoris-topbar-theme {
    align-items: center;
    background: var(--autoris-surface-soft);
    border: 1px solid var(--autoris-border);
    border-radius: 999px;
    display: flex;
    gap: 4px;
    padding: 4px;
}

.autoris-topbar-theme button {
    background: transparent;
    border-color: transparent;
    color: var(--autoris-text-muted);
    height: 30px;
    justify-content: center;
    min-height: 30px;
    min-width: 30px;
    padding: 0;
}

.autoris-topbar-theme button:hover,
.autoris-topbar-theme button:focus {
    background: var(--autoris-surface);
    color: var(--autoris-text);
}

.autoris-topbar-theme button.is-selected {
    background: var(--autoris-surface);
    color: var(--autoris-primary);
}

.autoris-topbar-divider {
    background: var(--autoris-border);
    height: 22px;
    margin: 0 3px;
    width: 1px;
}

.autoris-topbar-user {
    align-items: center;
    background: var(--autoris-surface-soft);
    border: 1px solid var(--autoris-border);
    border-radius: 999px;
    color: var(--autoris-text);
    display: inline-flex;
    font-size: 13px;
    font-weight: 800;
    gap: 8px;
    min-height: 38px;
    padding: 0 12px;
}

.autoris-topbar-user i {
    color: var(--autoris-primary);
}

.autoris-main-content {
    padding: 24px 28px 32px;
}

.autoris-shell,
.autoris-admin-page {
    margin: 0 auto;
    max-width: 1480px;
    padding: 0 !important;
    width: 100%;
}

.autoris-sidebar-desktop-toggle,
.autoris-sidebar-mobile-toggle {
    align-items: center;
    background: var(--autoris-surface);
    border: 1px solid var(--autoris-border);
    border-radius: 999px;
    box-shadow: var(--autoris-shadow-soft);
    color: var(--autoris-text);
    height: 38px;
    justify-content: center;
    position: fixed;
    width: 38px;
    z-index: 1050;
}

.autoris-sidebar-desktop-toggle {
    left: calc(var(--autoris-sidebar-width) - 19px);
    top: 20px;
    transition: left .18s ease;
}

.autoris-sidebar-mobile-toggle {
    left: 16px;
    top: 17px;
}

body.autoris-sidebar-collapsed .autoris-sidebar {
    width: var(--autoris-sidebar-collapsed-width);
}

body.autoris-sidebar-collapsed .autoris-app-frame {
    margin-left: var(--autoris-sidebar-collapsed-width);
}

body.autoris-sidebar-collapsed .autoris-sidebar-desktop-toggle {
    left: calc(var(--autoris-sidebar-collapsed-width) - 19px);
}

body.autoris-sidebar-collapsed .autoris-sidebar-brand-copy,
body.autoris-sidebar-collapsed .autoris-sidebar-section-title,
body.autoris-sidebar-collapsed .autoris-sidebar-link span,
body.autoris-sidebar-collapsed .autoris-sidebar-logout span,
body.autoris-sidebar-collapsed .theme-customizer-title span,
body.autoris-sidebar-collapsed .theme-customizer-chevron,
body.autoris-sidebar-collapsed .theme-customizer-panel {
    display: none !important;
}

body.autoris-sidebar-collapsed .autoris-sidebar-header,
body.autoris-sidebar-collapsed .autoris-sidebar-nav,
body.autoris-sidebar-collapsed .autoris-sidebar-footer {
    padding-left: 12px;
    padding-right: 12px;
}

body.autoris-sidebar-collapsed .autoris-sidebar-brand,
body.autoris-sidebar-collapsed .autoris-sidebar-link,
body.autoris-sidebar-collapsed .autoris-sidebar-logout,
body.autoris-sidebar-collapsed .theme-customizer-toggle {
    justify-content: center;
    padding-left: 0;
    padding-right: 0;
}

.autoris-sidebar-backdrop {
    background: rgba(15, 23, 42, 0.54);
    inset: 0;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    transition: opacity .18s ease;
    z-index: 1040;
}

.autoris-sidebar-backdrop.is-visible {
    opacity: 1;
    pointer-events: auto;
}

.autoris-admin-hero,
.autoris-header {
    background: var(--autoris-surface);
    border-top: 4px solid var(--autoris-primary);
}

.autoris-header {
    border-radius: 8px;
    margin-bottom: 18px;
}

.autoris-admin-page .breadcrumb {
    background: transparent;
    color: var(--autoris-text-muted);
    font-size: 13px;
}

.breadcrumb-item.active,
.breadcrumb-item + .breadcrumb-item::before {
    color: var(--autoris-text-muted);
}

.autoris-summary {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.autoris-summary .card,
.autoris-summary div {
    min-height: 112px;
}

.autoris-panel-title h2,
.autoris-admin-hero h1 {
    letter-spacing: 0;
}

.card,
.modal-content,
.dropdown-menu,
.autoris-admin-hero,
.autoris-admin-filters,
.autoris-admin-table-card,
.autoris-admin-form .card {
    border-radius: 8px !important;
}

.table thead th {
    background: var(--autoris-surface-soft) !important;
    color: var(--autoris-text-muted) !important;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    white-space: nowrap;
}

.card > .card-header,
.autoris-admin-table-card > .card-header,
.autoris-admin-form .card > .card-header {
    box-shadow: inset 4px 0 0 var(--autoris-primary);
}

.table tbody tr:hover > * {
    background: var(--autoris-table-hover) !important;
}

.table code {
    color: var(--autoris-primary);
    white-space: normal;
    word-break: break-word;
}

.form-control,
.form-select,
.input-group-text,
textarea.form-control {
    border-radius: 8px;
}

.input-group-text {
    background: var(--autoris-surface-soft);
    border-color: var(--autoris-border);
    color: var(--autoris-text-muted);
}

.form-control:focus,
.form-select:focus,
.btn:focus-visible,
.form-check-input:focus,
.autoris-sidebar-link:focus-visible,
.theme-color-option:focus-visible,
.theme-mode-option:focus-visible,
.autoris-topbar-theme button:focus-visible {
    box-shadow: 0 0 0 .2rem var(--autoris-focus-ring) !important;
    outline: 0;
}

html[data-theme-mode="dark"] .form-control:-webkit-autofill,
html[data-theme-mode="dark"] .form-control:-webkit-autofill:hover,
html[data-theme-mode="dark"] .form-control:-webkit-autofill:focus,
html[data-theme-mode="dark"] .form-select:-webkit-autofill,
html[data-theme-mode="dark"] .form-select:-webkit-autofill:hover,
html[data-theme-mode="dark"] .form-select:-webkit-autofill:focus {
    -webkit-text-fill-color: var(--autoris-input-text);
    caret-color: var(--autoris-input-text);
}

.btn {
    border-radius: 8px;
    font-weight: 700;
    letter-spacing: 0;
}

.btn-light {
    background: var(--autoris-button-light, var(--autoris-surface-soft));
    border-color: color-mix(in srgb, var(--autoris-button-primary) 22%, var(--autoris-border));
    color: var(--autoris-primary);
}

.btn-light:hover,
.btn-light:focus {
    background: color-mix(in srgb, var(--autoris-button-light, var(--autoris-surface-soft)) 82%, #ffffff);
    border-color: color-mix(in srgb, var(--autoris-button-primary) 42%, var(--autoris-border));
    color: var(--autoris-primary);
}

.btn-outline-primary {
    border-color: color-mix(in srgb, var(--autoris-button-primary) 55%, var(--autoris-border));
    color: var(--autoris-button-primary);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
    background: var(--autoris-button-primary);
    border-color: var(--autoris-button-primary);
    color: #ffffff;
}

.btn-outline-info {
    border-color: color-mix(in srgb, var(--autoris-button-info) 55%, var(--autoris-border));
    color: var(--autoris-button-info);
}

.btn-outline-info:hover,
.btn-outline-info:focus {
    background: var(--autoris-button-info);
    border-color: var(--autoris-button-info);
    color: #ffffff;
}

.btn-outline-success {
    border-color: color-mix(in srgb, var(--autoris-button-success) 55%, var(--autoris-border));
    color: var(--autoris-button-success);
}

.btn-outline-success:hover,
.btn-outline-success:focus {
    background: var(--autoris-button-success);
    border-color: var(--autoris-button-success);
    color: #ffffff;
}

.badge.bg-success,
.autoris-state-badge.is-success,
.autoris-state-badge.is-activa,
.autoris-state-badge.is-online {
    background: var(--autoris-success-bg) !important;
    border-color: color-mix(in srgb, var(--autoris-success) 32%, transparent) !important;
    color: var(--autoris-success) !important;
}

.badge.bg-danger,
.autoris-state-badge.is-failed,
.autoris-state-badge.is-error {
    background: var(--autoris-danger-bg) !important;
    border-color: color-mix(in srgb, var(--autoris-danger) 32%, transparent) !important;
    color: var(--autoris-danger) !important;
}

.badge.bg-warning,
.autoris-state-badge.is-pending,
.autoris-state-badge.is-command-sent,
.autoris-state-badge.is-command-received,
.autoris-state-badge.is-downloading,
.autoris-state-badge.is-verifying,
.autoris-state-badge.is-installing,
.autoris-state-badge.is-pendiente,
.autoris-state-badge.is-enviado,
.autoris-state-badge.is-recibido {
    background: var(--autoris-warning-bg) !important;
    border-color: color-mix(in srgb, var(--autoris-warning) 32%, transparent) !important;
    color: var(--autoris-warning) !important;
}

.badge.bg-secondary,
.badge.bg-light,
.autoris-state-badge.is-inactiva,
.autoris-state-badge.is-cancelled,
.autoris-state-badge.is-offline,
.autoris-state-badge.is-desconectado {
    background: var(--autoris-offline-bg) !important;
    border-color: color-mix(in srgb, var(--autoris-offline) 32%, transparent) !important;
    color: var(--autoris-offline) !important;
}

.badge.bg-primary,
.autoris-state-badge.is-active,
.autoris-state-badge.is-conectado {
    background: var(--autoris-accent-soft) !important;
    border-color: color-mix(in srgb, var(--autoris-primary) 32%, transparent) !important;
    color: var(--autoris-primary) !important;
}

.autoris-state-badge,
.badge {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 999px;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    gap: 6px;
    line-height: 1;
    min-height: 24px;
    padding: 5px 9px;
    white-space: nowrap;
}

.autoris-state-badge i.fa-circle {
    font-size: 7px;
}

.autoris-install-selectionbar {
    align-items: center;
    background: var(--autoris-surface);
    border: 1px solid var(--autoris-border);
    border-radius: 8px;
    box-shadow: var(--autoris-shadow-soft);
    color: var(--autoris-text);
    display: flex;
    gap: 14px;
    justify-content: space-between;
    padding: 12px 14px;
}

.autoris-install-count {
    background: var(--autoris-accent-soft);
    border: 1px solid color-mix(in srgb, var(--autoris-primary) 26%, transparent);
    border-radius: 999px;
    color: var(--autoris-primary);
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    margin-left: 8px;
    padding: 4px 9px;
}

.autoris-install-count.is-empty {
    background: var(--autoris-offline-bg);
    color: var(--autoris-offline);
}

.autoris-install-selection-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.autoris-check-col {
    text-align: center;
    width: 54px;
}

.autoris-admin-table-card .table > :not(caption) > * > * {
    padding: 14px 16px;
}

.autoris-alert-chip,
.autoris-panel-summary-chips span,
.autoris-device-meta span,
.autoris-monitor-state {
    border-radius: 999px;
}

.autoris-install-live-state {
    align-items: center;
    background: var(--autoris-offline-bg);
    border: 1px solid color-mix(in srgb, var(--autoris-offline) 28%, transparent);
    border-radius: 999px;
    color: var(--autoris-offline);
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    min-height: 26px;
    padding: 5px 10px;
}

.autoris-install-live-state.is-online {
    background: var(--autoris-online-bg);
    border-color: color-mix(in srgb, var(--autoris-online) 30%, transparent);
    color: var(--autoris-online);
}

.autoris-install-live-state.is-polling,
.autoris-install-live-state.is-warning {
    background: var(--autoris-warning-bg);
    border-color: color-mix(in srgb, var(--autoris-warning) 30%, transparent);
    color: var(--autoris-warning);
}

.autoris-install-live-state.is-idle {
    background: var(--autoris-accent-soft);
    border-color: color-mix(in srgb, var(--autoris-primary) 26%, transparent);
    color: var(--autoris-primary);
}

.autoris-install-progress {
    align-items: center;
    display: grid;
    gap: 8px;
    min-width: 132px;
}

.autoris-install-progress .progress {
    background: var(--autoris-offline-bg);
    border-radius: 999px;
    height: 8px;
    overflow: hidden;
}

.autoris-install-progress .progress-bar {
    background: var(--autoris-primary);
    border-radius: inherit;
    transition: width .25s ease;
}

.autoris-install-progress .js-install-progress-text {
    color: var(--autoris-text-muted);
    font-size: 12px;
    font-weight: 800;
}

tr.is-live-updated > * {
    background: color-mix(in srgb, var(--autoris-primary) 9%, var(--autoris-table-bg)) !important;
    transition: background .25s ease;
}


.autoris-qr-code,
.autoris-apk-qr,
.qr-white-shell,
.qr-code-wrap {
    background: #ffffff !important;
    color: #111827 !important;
}

.autoris-qr-json,
textarea.autoris-qr-json,
pre.autoris-qr-json {
    background: var(--autoris-input-bg) !important;
    border-color: var(--autoris-border) !important;
    color: var(--autoris-input-text) !important;
}

.alert-success {
    background: var(--autoris-success-bg) !important;
    border-color: color-mix(in srgb, var(--autoris-success) 28%, transparent) !important;
    color: var(--autoris-success) !important;
}

.alert-danger {
    background: var(--autoris-danger-bg) !important;
    border-color: color-mix(in srgb, var(--autoris-danger) 28%, transparent) !important;
    color: var(--autoris-danger) !important;
}

.alert-warning {
    background: var(--autoris-warning-bg) !important;
    border-color: color-mix(in srgb, var(--autoris-warning) 28%, transparent) !important;
    color: var(--autoris-warning) !important;
}

.autoris-public-body .card {
    border-radius: 8px;
    width: 100%;
}

@media (min-width: 992px) {
    .autoris-topbar-actions .dropdown {
        display: none;
    }
}

@media (max-width: 1199px) {
    .autoris-dashboard-grid {
        grid-template-columns: 1fr;
    }

    .autoris-events-panel {
        position: static;
    }
}

@media (max-width: 991.98px) {
    .autoris-sidebar {
        transform: translateX(-104%);
        width: min(86vw, 304px);
    }

    .autoris-sidebar.is-open {
        transform: translateX(0);
    }

    .autoris-app-frame,
    body.autoris-sidebar-collapsed .autoris-app-frame {
        margin-left: 0;
    }

    .autoris-topbar {
        padding-left: 66px;
    }

    .autoris-main-content {
        padding: 18px 16px 28px;
    }

    .autoris-topbar-theme {
        display: none;
    }
}

@media (max-width: 767.98px) {
    .autoris-topbar {
        align-items: flex-start;
        flex-direction: column;
        gap: 10px;
        min-height: auto;
        padding-bottom: 12px;
        padding-top: 14px;
    }

    .autoris-topbar-actions,
    .autoris-header-controls,
    .autoris-actions,
    .autoris-quick-actions,
    .autoris-install-selectionbar {
        align-items: stretch;
        flex-direction: column;
        width: 100%;
    }

    .autoris-header {
        align-items: stretch;
    }

    .autoris-summary {
        grid-template-columns: 1fr;
    }

    .autoris-admin-table-card .table,
    .autoris-admin-table-card .table tbody,
    .autoris-admin-table-card .table tr,
    .autoris-admin-table-card .table td {
        display: block;
        width: 100%;
    }

    .autoris-admin-table-card .table thead {
        display: none;
    }

    .autoris-admin-table-card .table tbody tr {
        border: 1px solid var(--autoris-border);
        border-radius: 8px;
        margin: 10px;
        overflow: hidden;
    }

    .autoris-admin-table-card .table tbody td {
        align-items: flex-start;
        border-bottom: 1px solid var(--autoris-border-soft);
        display: flex;
        gap: 12px;
        justify-content: space-between;
        min-height: 42px;
        text-align: left !important;
    }

    .autoris-admin-table-card .table tbody td::before {
        color: var(--autoris-text-muted);
        content: attr(data-label);
        flex: 0 0 110px;
        font-size: 11px;
        font-weight: 800;
        letter-spacing: .04em;
        text-transform: uppercase;
    }

    .autoris-admin-table-card .table tbody td:not([data-label])::before,
    .autoris-admin-table-card .table tbody td[data-label=""]::before {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}


.autoris-temporary-web-policy-summary {
    background: var(--autoris-surface-soft);
    border: 1px solid var(--autoris-border);
    border-left: 4px solid var(--autoris-primary);
    border-radius: 8px;
    color: var(--autoris-text);
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 16px;
    padding: 12px 14px;
}

.autoris-temporary-web-policy-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.autoris-temporary-web-policy-form .autoris-open-url-note,
.autoris-temporary-web-policy-form .autoris-policy-switch {
    grid-column: 1 / -1;
}

@media (max-width: 767.98px) {
    .autoris-temporary-web-policy-form {
        grid-template-columns: 1fr;
    }
}

.autoris-update-toast-container {
    z-index: 1090;
    top: 76px !important;
}

.autoris-update-toast {
    border: 1px solid color-mix(in srgb, var(--autoris-primary) 30%, var(--autoris-border));
    box-shadow: var(--autoris-shadow-hover);
    min-width: min(360px, calc(100vw - 32px));
}

.autoris-update-toast .toast-header {
    background: var(--autoris-surface-soft);
    border-bottom-color: var(--autoris-border);
    color: var(--autoris-text);
}

.autoris-update-toast .toast-body {
    background: var(--autoris-modal-bg);
    color: var(--autoris-text);
}

.autoris-update-toast-icon {
    align-items: center;
    background: var(--autoris-button-primary-soft);
    border-radius: 8px;
    color: var(--autoris-primary);
    display: inline-flex;
    height: 32px;
    justify-content: center;
    margin-right: .75rem;
    width: 32px;
}

@media (max-width: 575.98px) {
    .autoris-update-toast-container {
        left: 0;
        right: 0;
        top: 64px !important;
    }

    .autoris-update-toast {
        width: 100%;
    }
}


/* Tanda 6: checkboxes responsivos y táctiles */
.form-check-input {
    accent-color: var(--autoris-primary);
    border-color: color-mix(in srgb, var(--autoris-primary) 38%, var(--autoris-border));
    cursor: pointer;
    flex: 0 0 auto;
    height: 1.12rem;
    margin: 0;
    width: 1.12rem;
}

.form-check-input:checked {
    background-color: var(--autoris-primary);
    border-color: var(--autoris-primary);
}

.form-check-input:disabled {
    cursor: not-allowed;
    opacity: .45;
}

.form-switch .form-check-input {
    border-radius: 999px;
    height: 1.28rem;
    width: 2.45rem;
}

.autoris-checkbox-touch {
    align-items: center;
    border-radius: 8px;
    color: var(--autoris-text);
    cursor: pointer;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
    margin: 0;
    min-height: 44px;
    min-width: 44px;
    padding: 7px 9px;
    touch-action: manipulation;
    user-select: none;
}

.autoris-checkbox-touch:hover,
.autoris-checkbox-touch:focus-within {
    background: color-mix(in srgb, var(--autoris-primary) 8%, transparent);
}

.autoris-checkbox-touch.is-icon-only {
    padding: 6px;
}

.autoris-checkbox-touch.is-inline {
    justify-content: flex-start;
    min-width: 0;
}

.autoris-checkbox-touch .form-check-input {
    margin: 0;
}

.autoris-form-check-touch {
    align-items: flex-start;
    border: 1px solid var(--autoris-border-soft);
    border-radius: 8px;
    display: flex;
    gap: 10px;
    min-height: 44px;
    padding: 9px 10px;
}

.autoris-form-check-touch .form-check-input {
    margin-left: 0;
    margin-top: 2px;
}

.autoris-form-check-touch .form-check-label {
    color: var(--autoris-text);
    cursor: pointer;
    line-height: 1.35;
    padding-top: 1px;
}

.autoris-check-col,
.autoris-device-select-col {
    min-width: 64px;
    text-align: center;
    vertical-align: middle;
    width: 64px;
}

.autoris-check-col .autoris-checkbox-touch,
.autoris-device-select-col .autoris-checkbox-touch {
    margin-inline: auto;
}

.autoris-android-restrictions-grid label,
.autoris-policy-switch,
.autoris-web-policy-check,
.autoris-app-policy label {
    align-items: center;
    border: 1px solid var(--autoris-border-soft);
    border-radius: 8px;
    cursor: pointer;
    display: inline-flex;
    gap: 9px;
    min-height: 42px;
    padding: 8px 10px;
    touch-action: manipulation;
    user-select: none;
}

.autoris-android-restrictions-grid label:hover,
.autoris-policy-switch:hover,
.autoris-web-policy-check:hover,
.autoris-app-policy label:hover,
.qp-ms__item:hover {
    background: color-mix(in srgb, var(--autoris-primary) 8%, var(--autoris-surface));
}

.autoris-android-restrictions-grid label .form-check-input,
.autoris-policy-switch .form-check-input,
.autoris-web-policy-check .form-check-input,
.autoris-app-policy label .form-check-input {
    margin: 0;
}

.qp-ms__item {
    min-height: 42px;
}

.qp-ms__item .qp-ms__checkbox {
    margin: 0;
}

@media (max-width: 980px) {
    .autoris-devices-panel .table tbody td.autoris-device-select-col {
        align-items: center;
        box-shadow: inset 3px 0 0 var(--autoris-offline);
        display: flex !important;
        justify-content: space-between;
        min-height: 56px;
        padding-left: 16px;
        width: 100%;
    }

    .autoris-devices-panel .table tbody tr.is-online td.autoris-device-select-col {
        box-shadow: inset 3px 0 0 var(--autoris-online);
    }

    .autoris-device-row td.autoris-device-select-col::before {
        background: transparent;
        border-radius: 0;
        bottom: auto;
        color: var(--autoris-muted);
        content: attr(data-label);
        display: block;
        flex: 1 1 auto;
        font-size: 11px;
        font-weight: 800;
        left: auto;
        letter-spacing: .04em;
        margin: 0;
        position: static;
        text-transform: uppercase;
        top: auto;
        width: auto;
    }

    .autoris-devices-panel .table tbody td.autoris-device-select-col .autoris-checkbox-touch {
        margin-left: auto;
    }
}

@media (max-width: 767.98px) {
    .autoris-admin-table-card .table tbody td.autoris-check-col {
        align-items: center;
        display: flex;
        justify-content: space-between;
        min-height: 56px;
        text-align: left !important;
        width: 100%;
    }

    .autoris-admin-table-card .table tbody td.autoris-check-col::before {
        flex: 1 1 auto;
    }

    .autoris-admin-table-card .table tbody td.autoris-check-col .autoris-checkbox-touch {
        margin-left: auto;
    }

    .autoris-android-restrictions-grid label,
    .autoris-policy-switch,
    .autoris-web-policy-check,
    .autoris-app-policy label {
        width: 100%;
    }
}


/* Seleccion de tablets: checkbox tactil y responsive */
.autoris-tablet-check {
    background: color-mix(in srgb, var(--autoris-primary) 5%, var(--autoris-surface));
    border: 1px solid color-mix(in srgb, var(--autoris-primary) 18%, var(--autoris-border));
    box-shadow: none;
    position: relative;
    z-index: 2;
}

.autoris-tablet-check .form-check-input {
    height: 1.22rem;
    width: 1.22rem;
}

.autoris-tablet-check-text {
    color: var(--autoris-text);
    display: none;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.2;
    white-space: nowrap;
}

.autoris-tablet-check:hover,
.autoris-tablet-check:focus-within {
    background: color-mix(in srgb, var(--autoris-primary) 10%, var(--autoris-surface));
    border-color: color-mix(in srgb, var(--autoris-primary) 34%, var(--autoris-border));
}

.autoris-tablet-check:has(.form-check-input:checked) {
    background: color-mix(in srgb, var(--autoris-primary) 14%, var(--autoris-surface));
    border-color: color-mix(in srgb, var(--autoris-primary) 48%, var(--autoris-border));
}

.autoris-tablet-check:has(.form-check-input:disabled) {
    cursor: not-allowed;
    opacity: .55;
}

.autoris-device-select-col,
.autoris-check-col {
    overflow: visible;
    position: relative;
}

@media (max-width: 980px) {
    .autoris-devices-panel #devices-table thead {
        display: block;
        margin-bottom: 10px;
    }

    .autoris-devices-panel #devices-table thead tr {
        display: block;
    }

    .autoris-devices-panel #devices-table thead th {
        display: none;
    }

    .autoris-devices-panel #devices-table thead th.autoris-device-select-col {
        border: 0;
        display: block;
        padding: 0;
        text-align: left;
        width: 100%;
    }

    .autoris-devices-panel #devices-table thead .autoris-tablet-check,
    .autoris-devices-panel #devices-table tbody td.autoris-device-select-col .autoris-tablet-check {
        justify-content: flex-start;
        min-height: 48px;
        padding: 10px 12px;
        width: 100%;
    }

    .autoris-devices-panel #devices-table tbody td.autoris-device-select-col {
        background: color-mix(in srgb, var(--autoris-primary) 4%, var(--autoris-surface));
        border-bottom-color: var(--autoris-border-soft);
        gap: 0;
        padding: 10px 12px 10px 16px;
    }

    .autoris-devices-panel #devices-table tbody td.autoris-device-select-col::before {
        display: none;
    }

    .autoris-devices-panel #devices-table .autoris-tablet-check-text {
        display: inline-flex;
    }
}

@media (max-width: 767.98px) {
    .autoris-admin-table-card #installDevicesTable thead {
        display: block;
        margin: 10px 10px 0;
    }

    .autoris-admin-table-card #installDevicesTable thead tr {
        display: block;
    }

    .autoris-admin-table-card #installDevicesTable thead th {
        display: none;
    }

    .autoris-admin-table-card #installDevicesTable thead th.autoris-check-col {
        border: 0;
        display: block;
        padding: 0;
        text-align: left !important;
        width: 100%;
    }

    .autoris-admin-table-card #installDevicesTable thead .autoris-tablet-check,
    .autoris-admin-table-card #installDevicesTable tbody td.autoris-check-col .autoris-tablet-check {
        justify-content: flex-start;
        min-height: 48px;
        padding: 10px 12px;
        width: 100%;
    }

    .autoris-admin-table-card #installDevicesTable tbody td.autoris-check-col {
        background: color-mix(in srgb, var(--autoris-primary) 4%, var(--autoris-surface));
        border-bottom-color: var(--autoris-border-soft);
        gap: 0;
        padding: 10px 12px;
    }

    .autoris-admin-table-card #installDevicesTable tbody td.autoris-check-col::before {
        display: none;
    }

    .autoris-admin-table-card #installDevicesTable .autoris-tablet-check-text {
        display: inline-flex;
    }
}
.autoris-application-restriction-list {
    max-height: 16rem;
    overflow-y: auto;
    border: 1px solid #dbe2ea;
    padding: .75rem;
}

.autoris-application-restriction-list legend {
    float: none;
    width: auto;
    margin: 0 0 .5rem;
    font-size: .82rem;
    font-weight: 700;
}

.autoris-application-restriction-item,
.autoris-application-restriction-result {
    display: flex;
    gap: .65rem;
    align-items: flex-start;
    padding: .55rem 0;
    border-bottom: 1px solid #edf0f4;
}

.autoris-application-restriction-item {
    cursor: pointer;
}

.autoris-application-restriction-item:has(.form-check-input:checked) {
    background: color-mix(in srgb, var(--autoris-primary) 7%, transparent);
}

.autoris-application-restriction-item:has(.form-check-input:disabled) {
    cursor: default;
}

.autoris-application-restriction-item:last-child,
.autoris-application-restriction-result:last-child {
    border-bottom: 0;
}

.autoris-application-restriction-item span,
.autoris-application-restriction-result {
    min-width: 0;
}

.autoris-application-restriction-item small,
.autoris-application-restriction-result small,
.autoris-application-restriction-result span {
    display: block;
    overflow-wrap: anywhere;
}

.autoris-application-restriction-item .js-application-kiosk-add-managed-play {
    display: block;
    margin-top: .45rem;
}

.autoris-application-restriction-preview {
    max-height: 18rem;
    overflow-y: auto;
    border: 1px solid var(--autoris-border);
    padding: .75rem;
    background: var(--autoris-table-hover);
    color: var(--autoris-text);
}

.autoris-application-selection-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .7rem .8rem;
    border: 1px solid var(--autoris-border);
    background: var(--autoris-table-hover);
    color: var(--autoris-text);
}

.autoris-application-selection-bar small {
    display: block;
    color: var(--autoris-text-muted, #64748b);
}

.autoris-application-confirmation-list {
    margin: .65rem 0 0;
    padding-left: 1.1rem;
}

.autoris-managed-play-dialog {
    width: min(96vw, 1180px);
    max-width: 1180px;
}

.autoris-managed-play-modal-body {
    height: min(78vh, 860px);
    min-height: 0;
    padding: 0;
}

.autoris-managed-play-modal-body iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.autoris-managed-play-host {
    margin: 0;
    color: #172033;
    background: #f6f8fb;
    font-family: Arial, sans-serif;
}

.autoris-managed-play-shell {
    display: flex;
    flex-direction: column;
    height: 100vh;
    height: 100dvh;
    min-height: 0;
}

.autoris-managed-play-shell > [hidden] {
    display: none !important;
}

.autoris-managed-play-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.25rem .65rem;
    background: #fff;
    border-bottom: 1px solid #dbe2ea;
    flex-shrink: 0;
}

.autoris-managed-play-header > div {
    min-width: 0;
    overflow-wrap: anywhere;
}

.autoris-managed-play-header h1 {
    margin: 0 0 .2rem;
    font-size: 1.05rem;
}

.autoris-managed-play-header p,
.autoris-managed-play-status {
    margin: 0;
    color: #64748b;
    font-size: .85rem;
}

.autoris-managed-play-status {
    padding: .55rem 1.25rem;
    background: #fff;
    flex-shrink: 0;
    overflow-wrap: anywhere;
}

.autoris-managed-play-frame {
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

/* Tablets 11.2.2: compact existing dashboard, without changing theme tokens. */
.autoris-tablets-compact .autoris-summary > .card { min-height: 76px; padding: 12px 16px; }
.autoris-tablets-compact .autoris-panel-header-aside { align-self: start; }
.autoris-tablets-compact .autoris-tablet-activity summary { cursor: pointer; text-align: right; font-size: .85rem; }
.autoris-tablets-compact .autoris-tablet-activity .autoris-events-panel { margin-top: 8px; }
.autoris-tablets-compact .autoris-device-actions { display: flex; justify-content: flex-end; min-width: 40px; }
.autoris-tablets-compact .js-tablet-menu-toggle { width: 36px; height: 36px; padding: 0; flex: 0 0 36px; }
.autoris-tablets-compact .autoris-tablet-check-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.autoris-tablets-compact .autoris-device-select-col { width: 44px; min-width: 44px; }
.autoris-tablets-compact .autoris-checkbox-touch { padding: 8px; min-width: 36px; }
.autoris-tablets-compact .autoris-device-row td { padding-top: 10px; padding-bottom: 10px; }
.autoris-tablets-compact .autoris-device-cell strong { overflow-wrap: anywhere; }
.autoris-tablets-compact .autoris-device-meta { display: block; }
.autoris-tablets-compact .js-configuration-personalized { display: block; width: fit-content; margin-top: 4px; white-space: normal; }
.autoris-tablets-compact .js-tablet-base-policy { overflow-wrap: anywhere; }
.autoris-tablets-compact .autoris-tablet-secondary { display: block; font-size: .75rem; color: var(--autoris-text-muted); margin-top: 4px; }
.autoris-tablets-compact .autoris-selection-bar { gap: 8px; align-items: center; }
.autoris-tablets-compact #tabletBulkActions { display: flex; flex-wrap: wrap; gap: 6px; }
.autoris-tablets-compact [hidden], .autoris-action-panel[hidden] { display: none !important; }
.autoris-action-panel {
    position: fixed; inset: auto; margin: 0; padding: 10px; z-index: 1050;
    box-sizing: border-box; overflow: auto; overscroll-behavior: contain;
    border: 1px solid var(--autoris-border); border-radius: 6px; background: var(--autoris-surface); color: var(--autoris-text);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .16); text-align: left;
}
.autoris-action-panel .autoris-action-group + .autoris-action-group { border-top: 1px solid var(--autoris-border); margin-top: 8px; padding-top: 8px; }
.autoris-action-panel .autoris-action-group h3 { font-size: .75rem; font-weight: 600; margin: 0 0 5px; color: var(--autoris-text-muted); }
.autoris-action-panel .autoris-action-group > .btn { display: flex; align-items: center; justify-content: flex-start; gap: 8px; width: 100%; min-width: 0; min-height: 36px; height: auto; margin: 3px 0; padding: 7px 10px; text-align: left; white-space: normal; overflow-wrap: anywhere; }
.autoris-action-panel .autoris-device-action-wide span { font-size: 14px; line-height: 1.3; }
.autoris-action-panel .autoris-action-group > .d-none { display: none !important; }
.autoris-action-panel :focus-visible, .autoris-tablets-compact .js-tablet-menu-toggle:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
@media (max-width: 767.98px) {
    .autoris-tablets-compact .autoris-panel-header-aside { width: 100%; }
    .autoris-tablets-compact .js-tablet-menu-toggle { width: 44px; height: 44px; flex-basis: 44px; }
    .autoris-tablets-compact .autoris-checkbox-touch { min-width: 44px; min-height: 44px; }
    .autoris-tablets-compact .autoris-device-row td[data-label="Batería"],
    .autoris-tablets-compact .autoris-device-row td[data-label="Última comunicación"] { display: none; }
    .autoris-tablets-compact .autoris-selection-bar { flex-direction: column; align-items: stretch; }
}

.autoris-managed-play-retry {
    border: 1px solid #cbd5e1;
    padding: .45rem .7rem;
    color: #172033;
    background: #fff;
    cursor: pointer;
}

@media (max-width: 767.98px) {
    .autoris-application-selection-bar {
        align-items: stretch;
        flex-direction: column;
    }

    .autoris-managed-play-dialog {
        width: 100%;
        height: 100%;
        margin: 0;
    }

    .autoris-managed-play-modal-body {
        height: calc(100vh - 4.5rem);
    }
}
.autoris-operation-modal .modal-header > div {
    min-width: 0;
    overflow-wrap: anywhere;
}

.autoris-operation-modal .modal-footer {
    flex-wrap: wrap;
    gap: .5rem;
}

.autoris-operation-modal .modal-footer > .autoris-modal-subtitle,
.autoris-operation-modal .autoris-operation-progress {
    flex-basis: 100%;
}

.autoris-operation-modal .autoris-operation-targets ul,
.autoris-operation-modal .autoris-operation-apps {
    max-height: 9rem;
    overflow: auto;
    overflow-wrap: anywhere;
    margin-top: .5rem;
}

.autoris-operation-modal .modal-body .d-flex {
    flex-wrap: wrap;
}

.autoris-operation-modal .modal-body label {
    max-width: 100%;
}

.autoris-operation-modal .autoris-application-restriction-result {
    overflow-wrap: anywhere;
}
