/*
 * nexi backoffice skin over Filament, after the canvas "nexi · Interfaz por rol".
 * Colors come from the panel palette (gray is plum-tinted, primary is Ciruela),
 * so light and dark follow Filament's own .dark switch.
 */

/* Page heading and subheading */
.fi-header-heading{font-size:28px;font-weight:700;letter-spacing:-0.02em}
.fi-header-subheading{font-size:15px;color:var(--gray-500)}

/* Sidebar: white panel with a hairline, logo on top, no icons */
.fi-sidebar{background:var(--color-white);border-inline-end:1px solid var(--gray-200)}
.dark .fi-sidebar{background:var(--gray-900);border-inline-end-color:var(--gray-800)}
.fi-sidebar-header{background:transparent;box-shadow:none;border:0}
.fi-sidebar-header-logo-ctn .fi-logo{height:2.4rem}
.fi-sidebar-item-icon{display:none}
.fi-sidebar-item-btn{border-radius:8px;padding:9px 12px;min-height:40px}
.fi-sidebar-item-label{font-size:14px;font-weight:500;color:var(--gray-500)}
.dark .fi-sidebar-item-label{color:var(--gray-400)}
.fi-sidebar-item.fi-active .fi-sidebar-item-btn{background:var(--gray-100)}
.dark .fi-sidebar-item.fi-active .fi-sidebar-item-btn{background:var(--gray-800)}
.fi-sidebar-item.fi-active .fi-sidebar-item-label{color:var(--primary-600);font-weight:600}
.dark .fi-sidebar-item.fi-active .fi-sidebar-item-label{color:var(--primary-300)}
.fi-sidebar-group-label{font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-500)}

/* Cards: 12px radius and a 1px border instead of ring plus shadow */
.fi-section:not(.fi-section-not-contained),
.fi-wi-stats-overview-stat,
.fi-ta-ctn,
.fi-tenant-profile .fi-section{border-radius:12px;box-shadow:0 0 0 1px var(--gray-200)}
.dark .fi-section:not(.fi-section-not-contained),
.dark .fi-wi-stats-overview-stat,
.dark .fi-ta-ctn{box-shadow:0 0 0 1px var(--gray-800)}
.fi-section-header-heading,.fi-ta-header-heading{font-size:18px;font-weight:700}

/* Stat cards: small caps label, big number */
.fi-wi-stats-overview-stat-label{font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-500)}
.fi-wi-stats-overview-stat-value{font-size:32px;font-weight:700;letter-spacing:-0.01em}
.fi-wi-stats-overview-stat-description{font-size:13px}

/* Tables: quiet uppercase headers on white, light row rules */
.fi-ta-table thead,.fi-ta-table thead tr{background:transparent}
.fi-ta-header-cell,.fi-ta-header-cell-label{font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-500)}
.fi-ta-table tbody tr{border-color:var(--gray-100)}
.dark .fi-ta-table tbody tr{border-color:var(--gray-800)}

/* Pills */
.fi-badge{border-radius:999px;box-shadow:none;font-size:12px;font-weight:600;padding:3px 10px}

/* Buttons and inputs: 8px corners */
.fi-btn{border-radius:8px;font-weight:600}
.fi-input-wrp,.fi-select-input,.fi-fo-field-wrp .fi-input-wrp{border-radius:8px}
.fi-tabs{border-radius:10px;background:var(--gray-100);box-shadow:none;padding:4px}
.dark .fi-tabs{background:var(--gray-800)}
.fi-tabs-item{border-radius:8px}
.fi-tabs-item.fi-active{background:var(--color-white)}
.dark .fi-tabs-item.fi-active{background:var(--gray-900)}

/* Card padding as in the canvas: 16px 20px header strip, 20px body */
.fi-section:not(.fi-section-not-contained)>.fi-section-header{padding:16px 20px}
.fi-section:not(.fi-section-not-contained):not(.fi-divided)>.fi-section-content-ctn>.fi-section-content{padding:20px}

/* A Filament table inside a card is the card's own table: no second card, edge to edge */
.fi-section .fi-ta-ctn,.dark .fi-section .fi-ta-ctn{box-shadow:none;border-radius:0}
.fi-section:not(.fi-section-not-contained):not(.fi-divided)>.fi-section-content-ctn>.fi-section-content:has(.fi-ta-ctn){padding:0}

/* Filament tables with the canvas rhythm: 10px 16px headers, 12px 16px cells */
.fi-ta-header{padding:16px 20px}
.fi-ta-ctn .fi-ta-header-toolbar{padding:12px 20px}
.fi-ta-table>thead>tr{background:transparent}
.fi-ta-table>thead>tr>.fi-ta-header-cell{padding:10px 16px}
.fi-ta-table>tbody>tr>td.fi-ta-cell:not(.fi-ta-selection-cell){padding:0}
.fi-ta-table .fi-ta-cell .fi-ta-text,.fi-ta-table .fi-ta-cell .fi-ta-icon,.fi-ta-table .fi-ta-cell .fi-ta-actions{padding:12px 16px}
.fi-ta-table>thead>tr>.fi-ta-header-cell:first-child,.fi-ta-table .fi-ta-cell:first-child .fi-ta-text{padding-inline-start:20px}
.fi-ta-table>thead>tr>.fi-ta-header-cell:last-child,.fi-ta-table .fi-ta-cell:last-child .fi-ta-text,.fi-ta-table .fi-ta-cell:last-child .fi-ta-actions{padding-inline-end:20px}
.fi-ta-table .fi-ta-text-item{font-size:14px}

/* Hand-written tables in custom pages: same as the canvas .t, out to the card edges */
.nx-t{width:100%;border-collapse:collapse;font-size:14px}
.fi-section-content>.nx-t,.fi-section-content>div:has(>.nx-t){margin-inline:-20px;width:calc(100% + 40px)}
.fi-section-content:is(:has(>.nx-t:only-child),:has(>div:only-child>.nx-t:only-child)){padding:0!important}
.fi-section-content:is(:has(>.nx-t:only-child),:has(>div:only-child>.nx-t:only-child))>*{margin:0;width:100%}
.nx-t th{text-align:left;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-500);font-weight:500;padding:10px 16px;border-bottom:1px solid var(--gray-200)}
.nx-t td{padding:12px 16px;border-bottom:1px solid var(--gray-100);vertical-align:middle}
.nx-t th:first-child,.nx-t td:first-child{padding-inline-start:20px}
.nx-t th:last-child,.nx-t td:last-child{padding-inline-end:20px}
.dark .nx-t th{border-bottom-color:var(--gray-800)}
.dark .nx-t td{border-bottom-color:var(--gray-800)}

/* Record pages: back link over the heading instead of breadcrumbs */
.nx-back{display:inline-block;margin-bottom:8px;font-size:14px;font-weight:500;color:var(--primary-600);text-decoration:none}
.nx-back:hover{color:var(--primary-700)}
.dark .nx-back{color:var(--primary-300)}
.nx-heading-row{display:inline-flex;flex-wrap:wrap;align-items:center;gap:12px}
.nx-mono{font-family:var(--mono-font-family),ui-monospace,monospace;font-weight:500}
.fi-header-heading .nx-mono{font-size:26px}

/* Session detail: stat cards over the timeline, as in the canvas */
.nx-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
@media (max-width:48rem){.nx-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.nx-stat{background:var(--color-white);border-radius:12px;box-shadow:0 0 0 1px var(--gray-200);padding:16px 20px}
.dark .nx-stat{background:var(--gray-900);box-shadow:0 0 0 1px var(--gray-800)}
.nx-lbl{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-500);font-weight:500}
.nx-stat-v{font-size:22px;font-weight:700;margin-top:6px}
.nx-stat-v span{font-size:14px;font-weight:400;color:var(--gray-500)}
.nx-stats-foot{margin:12px 0 0;font-size:13px;color:var(--gray-500)}
.nx-mono-plain{font-family:var(--mono-font-family),ui-monospace,monospace}
.nx-flush .fi-section-content{padding:0!important}
.nx-flush.fi-section,.nx-flush .fi-section{overflow:hidden}
.nx-toggle{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--gray-500);cursor:pointer}
.nx-toggle input{width:16px;height:16px;accent-color:var(--primary-600)}
.nx-timeline{list-style:none;margin:0;padding:0}
.nx-ev{display:flex;gap:14px;padding:14px 20px;border-bottom:1px solid var(--gray-100);font-size:14px}
.nx-ev:last-child{border-bottom:0}
.dark .nx-ev{border-bottom-color:var(--gray-800)}
.nx-ev-warning{background:var(--warning-50)}
.nx-ev-danger{background:var(--danger-50)}
.dark .nx-ev-warning,.dark .nx-ev-danger{background:var(--gray-800)}
.nx-ev-h{font-family:var(--mono-font-family),ui-monospace,monospace;font-size:12px;color:var(--gray-500);width:64px;flex-shrink:0;padding-top:2px}
.nx-ev-b{flex-grow:1;min-width:0}
.nx-ev-muted{color:var(--gray-500)}
.nx-ev-warn{color:var(--warning-700)}
.nx-ev-danger .nx-ev-b>strong{color:var(--danger-700)}
.nx-ev-text{margin-top:2px}
.nx-ev-d{font-family:var(--mono-font-family),ui-monospace,monospace;font-size:12px;color:var(--gray-500);margin-top:4px;overflow-wrap:anywhere}
.nx-pill{display:inline-block;font-size:12px;font-weight:600;padding:1px 8px;border-radius:999px;background:var(--gray-100);color:var(--primary-600);margin-inline-end:4px}
.nx-pill-write{background:var(--color-white);color:var(--warning-700);box-shadow:0 0 0 1px var(--warning-200)}
.dark .nx-pill{background:var(--gray-800);color:var(--primary-300)}
.nx-kv .fi-in-entry{gap:4px}
.nx-kv .fi-in-entry-label{font-size:13px;font-weight:400;color:var(--gray-500)}
.nx-kv .fi-in-text-item{font-size:14px;overflow-wrap:anywhere}
