/* Shared editor for wide table fields; same DOM and draft values in both views. */
.settings-nav>.subnav>.settings-macro-group{margin:7px 0;border:1px solid rgba(145,190,203,.18);border-radius:11px;background:rgba(255,255,255,.035);overflow:hidden}.settings-nav .settings-macro-title{font-size:14px!important;font-weight:850!important;letter-spacing:.01em;color:#f3fbfd!important;background:rgba(37,132,158,.16)!important;padding:12px 14px!important}.settings-nav .settings-macro-items{padding:4px 5px 7px}.settings-nav .settings-macro-items>button{padding-left:17px!important;font-size:12px}.sidebar-collapsed .settings-nav.compact-open .settings-macro-title{font-size:13px!important}
.dashboard-assignment-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dashboard-assignment-grid label{display:grid;gap:5px}.dashboard-assignment-grid small{color:var(--muted)}.card-library-list{display:grid;gap:10px;max-height:58vh;margin-top:14px;overflow:auto}.card-library-list article{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.card-library-list article div{display:grid;gap:3px}.card-library-list small,.card-library-feedback{color:var(--muted)}@media(max-width:720px){.dashboard-assignment-grid{grid-template-columns:1fr}.card-library-list article{grid-template-columns:44px 1fr}.card-library-list article button{grid-column:1/-1}}
.communication-channels{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.communication-channel{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.communication-channel span{font-weight:700}.communication-channel small{color:var(--muted);line-height:1.35}.communication-channel.unavailable{opacity:.62;background:var(--surface-soft)}
.communication-hub-tabs{margin:0 0 16px}.communication-channel-summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.communication-channel-summary span{padding:7px 11px;border:1px solid #cce3e9;border-radius:999px;background:#eef9fb;color:#176780;font-size:12px;font-weight:800}
.crm-list-toolbar{display:grid;grid-template-columns:auto minmax(180px,240px) minmax(220px,1fr) auto;align-items:center;gap:10px}.crm-view-switch{display:flex;gap:5px}.crm-view-switch button{width:40px;height:40px;padding:0;border-radius:50%}.crm-view-switch button.active{border-color:#82bdcc;background:#eaf7fa;color:#126d86}.crm-view-picker{display:flex;align-items:center;gap:8px;color:#5d7782;font-size:12px}.crm-view-picker select{min-width:0}.crm-filter-button b{display:inline-grid;min-width:21px;height:21px;margin-left:5px;place-items:center;border-radius:999px;background:#167995;color:#fff;font-size:11px}.icon-only{width:42px;padding:0}.unified-view-editor{display:grid;gap:16px;padding:22px}.unified-view-editor section{border:1px solid #d8e7ec;border-radius:16px;background:#fff;padding:17px}.view-editor-intro{display:grid;grid-template-columns:minmax(220px,1fr) minmax(240px,1fr) auto;gap:14px;align-items:end}.view-editor-intro>div,.unified-view-grid header,.view-sort-section header{display:flex;gap:11px;align-items:center}.view-editor-intro>div>span,.unified-view-grid header>span,.view-sort-section header>span{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:10px;background:#167995;color:#fff;font-weight:850}.view-editor-intro strong,.view-editor-intro small{display:block}.view-editor-intro small,.unified-view-grid header p,.view-sort-section header p{margin:2px 0 0;color:#6d858e;font-size:12px}.compact-check{display:flex!important;align-items:center;gap:8px;min-height:47px}.compact-check input{width:18px;min-height:18px}.unified-view-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:16px}.unified-view-grid h3,.view-sort-section h3{margin:0}.view-logic{display:flex;align-items:center;gap:8px;margin:15px 0 10px}.view-logic span{font-size:12px;color:#66818c}.view-logic select{width:auto}.unified-view-editor .filter-row{grid-template-columns:minmax(120px,1fr) minmax(120px,.8fr) minmax(110px,1fr) 40px}.unified-column-list{display:grid;gap:7px;max-height:335px;margin-top:15px;overflow:auto}.unified-column-item{display:grid;grid-template-columns:20px 20px 1fr;align-items:center;gap:8px;padding:9px 10px;border:1px solid #e0e9ec;border-radius:10px;background:#f8fafb;color:#69808a;cursor:pointer}.unified-column-item.selected{border-color:#acd3de;background:#f0fafc;color:#193f4f}.unified-column-item input{width:17px;min-height:17px}.unified-column-item .drag-handle{cursor:grab;color:#75a7b5}.view-sort-section{display:grid!important;grid-template-columns:minmax(250px,1fr) minmax(180px,.65fr) minmax(180px,.65fr);align-items:end;gap:14px}.unified-view-editor>.form-actions{position:sticky;bottom:0;margin:0 -22px -22px;padding:15px 22px;background:rgba(255,255,255,.96)}@media(max-width:900px){.crm-list-toolbar{grid-template-columns:auto 1fr}.crm-list-toolbar .search-wrap{grid-column:1/-1}.unified-view-grid,.view-editor-intro,.view-sort-section{grid-template-columns:1fr}.unified-view-editor .filter-row{grid-template-columns:1fr}.unified-view-editor>.form-actions{flex-wrap:wrap}}
.modal .modal-card.table-wide-modal {
  width: min(1600px, 97vw) !important;
  max-width: 97vw !important;
}
.record-table-field .record-table-scroll { max-height: 360px; }
.record-table-field.table-wide .record-table-scroll { max-height: 65vh; }
.record-table-field.table-wide { box-shadow: 0 10px 32px rgba(16,63,83,.12); }
.record-table-field .record-table-scroll thead th {
  position: sticky; top: 0; z-index: 3; white-space: nowrap;
}
.record-table-field .record-table-scroll td { min-width: 170px; }
.record-table-field .record-table-scroll .table-row-actions {
  position: sticky; left: 0; z-index: 2; background: #f2f7f9; min-width: 86px;
}
.record-table-field .record-table-scroll thead .table-row-actions { z-index: 4; }
.record-table-field .record-table-scroll tfoot th {
  position: sticky; bottom: 0; z-index: 2;
}
.record-table-field > header { flex-wrap: wrap; }
.record-table-field > header > div { flex: 1; }
.record-table-field .table-wide-help {
  margin: 0; padding: 12px 17px; color: #496b78; background: #f4fafc; font-size: 13px;
}
.record-table-field [data-table-wide]:focus-visible { outline: 3px solid #71b8ca; outline-offset: 3px; }
.nav button[data-page="quote-area"]:before { content: "▦"; }
:root {
  --primary: #16556f;
  --primary-dark: #103f53;
  --primary-soft: #e9f1f4;
  --accent: #f39c12;
  --bg: #eef0f2;
  --paper: #fff;
  --ink: #263238;
  --muted: #6f7d84;
  --line: #d9dee1;
  --hover: rgba(0, 0, 0, 0.045);
  --danger: #b3261e;
  --ok: #2e7d32;
}
.image-field{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.image-field img{display:block;max-width:240px;max-height:160px;object-fit:contain;padding:10px;border:1px solid #d8e4e9;border-radius:14px;background:#fff}.image-field input[type=file]{width:100%;padding:10px;border:1px dashed #a9c0ca;border-radius:10px;background:#f7fbfc}.image-field small{color:#718790}
.module-section{margin:8px 0}.module-section-toggle{width:100%;padding:10px 14px;border:0;background:transparent;color:#8fb0bc;text-align:left;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}.module-section-toggle:after{content:'⌄';float:right}.module-section:not(.open) .module-section-toggle:after{transform:rotate(-90deg)}.module-section-items{display:none}.module-section.open>.module-section-items{display:block}.module-section-items>.nav-group{margin-left:8px}.navigation-editor-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:20px}.navigation-editor-list{display:grid;gap:10px}.navigation-editor-row{display:grid;grid-template-columns:1fr 1fr 90px;gap:10px;align-items:end;padding:12px;border:1px solid #dbe5e9;border-radius:12px}.navigation-editor-row label{margin:0}.navigation-group-row{display:grid;grid-template-columns:1fr 90px auto;gap:10px;align-items:end}.sidebar-collapsed .module-section-toggle{font-size:0;padding:5px}.sidebar-collapsed .module-section-toggle:after{display:none}.sidebar-collapsed .module-section-items{display:block}@media(max-width:900px){.navigation-editor-grid{grid-template-columns:1fr}.navigation-editor-row{grid-template-columns:1fr}}
.module-section-toggle{font-size:13px;letter-spacing:normal;text-transform:none}
.module-section.empty .module-section-items{display:none}.module-section.empty.open .module-section-items{display:block}.module-section-empty{display:block;padding:8px 18px 12px;color:#76909a;font-size:11px;font-style:italic}
.modal-card{position:relative}
.modal-global-close{position:absolute;z-index:4;top:16px;right:18px}
.technical-code-note{margin:2px 0 10px;padding:10px 12px;border:1px solid #cfe4ea;border-radius:10px;background:#f1f9fb;color:#55727c;font-size:12px}
.kanban-setting{padding:13px 14px;border:1px solid #cfe4ea;border-radius:12px;background:#f3fafc}.kanban-setting>span{display:flex;align-items:center;gap:9px;font-weight:750}.kanban-setting input{width:auto;min-height:auto}.kanban-setting small{display:block;margin-top:5px;color:var(--muted)}
.module-table.kanban-active{overflow:visible;border:0;background:transparent;box-shadow:none}.module-table.kanban-active>table,.module-table.kanban-active>.pager{display:none}.module-kanban{display:flex;align-items:flex-start;gap:14px;overflow-x:auto;padding:3px 2px 18px}.kanban-column{flex:0 0 290px;overflow:hidden;border:1px solid #d7e4e8;border-radius:15px;background:#f3f7f8}.kanban-column>header{display:flex;align-items:center;justify-content:space-between;padding:13px 15px;border-bottom:1px solid #d7e4e8;background:#fff;color:#315767;font-weight:800}.kanban-column>header b{display:grid;place-items:center;min-width:27px;height:27px;padding:0 7px;border-radius:9px;background:#e4f1f5;color:#246b81;font-size:12px}.kanban-column>div{display:grid;gap:9px;padding:10px;max-height:65vh;overflow-y:auto}.kanban-card{display:grid;width:100%;gap:6px;padding:13px;border:1px solid #dce7ea;border-radius:11px;background:#fff;text-align:left;box-shadow:0 3px 10px #1738450b;transition:.15s}.kanban-card:hover{transform:translateY(-1px);border-color:#7bb4c5;box-shadow:0 7px 18px #17384514}.kanban-card strong{color:#244b59}.kanban-card small{color:#6e858e}.kanban-card>span{width:max-content;margin-top:3px;padding:4px 7px;border-radius:8px;background:#edf4f6;color:#526e78;font-size:10px;font-weight:700}

/* Linguaggio grafico comune per i moduli gestionali. */
.management-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:-4px -4px 18px;padding:27px 30px;border:1px solid #cfe1e7;border-radius:20px;background:radial-gradient(circle at 88% 12%,#d7eef5 0,transparent 33%),linear-gradient(135deg,#fbfdfe,#edf6f8);box-shadow:0 12px 34px #17384510}
.management-title{display:flex;align-items:center;gap:17px}.management-title>div{display:grid;gap:2px}.management-title h1{margin:2px 0;font-size:30px;color:#173845}.management-title p{margin:0;color:#647b85}.management-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:linear-gradient(135deg,#1b7898,#14536a);color:#fff;font-size:24px;font-weight:800;box-shadow:0 10px 25px #1b78982e}
.management-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.management-summary article{display:grid;gap:3px;padding:15px 17px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow-sm)}.management-summary article span,.management-summary article small{color:var(--muted);font-size:12px}.management-summary article strong{color:#173845;font-size:24px}
.management-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:var(--shadow-sm)}.management-toolbar .search-wrap{flex:1}.management-toolbar input{min-height:42px;border-radius:10px;background:#f7fafb}.management-toolbar>span{color:var(--muted);font-size:12px;white-space:nowrap}
.management-table{overflow:hidden;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow-sm)}.management-table table{margin:0}.management-table thead{background:linear-gradient(180deg,#f9fcfd,#eff5f7)}.management-table th{padding:13px 14px;color:#637b84;font-size:11px;letter-spacing:.04em;text-transform:uppercase}.management-table td{padding:13px 14px;border-top:1px solid #e7eef0}.management-table tbody tr{transition:.15s}.management-table tbody tr:hover{background:#f7fbfc}
.user-identity{display:flex;align-items:center;gap:10px}.user-identity>span{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:11px;background:#e2f0f4;color:#226a80;font-weight:800}.user-identity>div,.users-table td:nth-child(3){display:grid;gap:2px}.user-identity small,.users-table td:nth-child(3) small{color:var(--muted)}
.user-type,.user-status,.user-security{display:inline-flex;align-items:center;width:max-content;gap:6px;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700}.user-type{background:#eef3f5;color:#536c75}.user-type.customer{background:#eee9f8;color:#654c91}.user-status{background:#edf3f5;color:#61757d}.user-status i{width:7px;height:7px;border-radius:50%;background:#91a3aa}.user-status.status-active{background:#e3f5ed;color:#197553}.user-status.status-active i{background:#2ca97a}.user-status.status-suspended,.user-status.status-revoked{background:#fdeaea;color:#a43b45}.user-status.status-suspended i,.user-status.status-revoked i{background:#d6535f}.user-security.protected{background:#e3f5ed;color:#197553}.user-security.required{background:#fff2d9;color:#8c651a}.user-security.open{background:#f4f1f0;color:#846e67}.user-actions{display:flex;gap:6px;white-space:nowrap}
.user-record-modal .modal-card{max-width:1020px;background:#f3f7f8}.user-record-modal .modal-card>.page-head{margin:-20px -20px 18px;padding:20px 22px;border-bottom:1px solid #d8e5e9;background:#fff;border-radius:14px 14px 0 0}.user-record-modal .record-block{padding:0 17px 17px;border:1px solid #d8e5e9;border-radius:14px;box-shadow:0 5px 18px #1738450c}.user-record-modal .record-block legend{padding:0 9px;color:#275667;font-weight:800}
.user-record-modal .user-compact-check{display:flex;min-height:48px;align-self:end;align-items:center;justify-content:flex-start;gap:10px;margin:0;padding:0 3px;color:#294754;font-weight:750;line-height:1.2}.user-record-modal .user-compact-check input[type=checkbox]{width:20px;height:20px;min-width:20px;min-height:20px;flex:0 0 20px;margin:0;accent-color:#167591;box-shadow:none}.user-record-modal .user-compact-check:hover{color:#175b72}
.application-navigation-list{display:grid!important;gap:9px;width:100%}.application-navigation-list .navigation-editor-row{grid-template-columns:26px minmax(190px,1fr) 100px 110px}.application-navigation-list .navigation-editor-row.locked{background:#edf3f5;opacity:.82}.application-navigation-list .navigation-editor-row.locked .navigation-drag-handle{letter-spacing:0;font-size:14px;cursor:not-allowed}
@media(max-width:900px){.management-hero{align-items:flex-start;flex-direction:column}.management-summary{grid-template-columns:repeat(2,1fr)}.management-toolbar{align-items:stretch;flex-direction:column}.management-toolbar>*{width:100%}.management-table{overflow:auto}}

.module-launchpad{padding:28px;border:1px solid #d7e4ea;border-radius:24px;background:linear-gradient(135deg,#fff,#f5fbfd);box-shadow:0 12px 30px rgba(16,55,71,.07)}
.module-launchpad>header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}
.module-launchpad>header>div:last-child{display:flex;align-items:center;gap:12px}
.module-launchpad h2{margin:6px 0 0;font-size:28px;color:#153e4e}
.launchpad-badge{padding:10px 16px;border:1px solid #b7e3d0;border-radius:999px;background:#eaf9f2;color:#27775b;font-weight:700}
.launchpad-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.launchpad-card{display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:16px;min-height:126px;padding:20px;text-align:left;border:1px solid #d6e1e6;border-radius:18px;background:#fff;color:#214958;box-shadow:0 6px 18px rgba(16,55,71,.05);cursor:pointer}
.launchpad-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(16,55,71,.1)}
.launchpad-card-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:#e6f3f8;font-size:26px;color:#18738e}
.launchpad-card.color-cyan .launchpad-card-icon{background:#dff6fc;color:#087d9b}.launchpad-card.color-teal .launchpad-card-icon{background:#e1f5f2;color:#247a70}.launchpad-card.color-green .launchpad-card-icon{background:#e8f5ef;color:#2c7c5e}.launchpad-card.color-lime .launchpad-card-icon{background:#f0f8d8;color:#668719}.launchpad-card.color-yellow .launchpad-card-icon{background:#fff8cc;color:#9a7900}.launchpad-card.color-amber .launchpad-card-icon{background:#fff0c9;color:#a26500}.launchpad-card.color-orange .launchpad-card-icon{background:#fff0df;color:#b96c20}.launchpad-card.color-coral .launchpad-card-icon{background:#ffe8e1;color:#bd5740}.launchpad-card.color-red .launchpad-card-icon{background:#fbe8ea;color:#b54b54}.launchpad-card.color-pink .launchpad-card-icon{background:#fbe5f1;color:#ad3f79}.launchpad-card.color-violet .launchpad-card-icon{background:#f0eafb;color:#6945a5}.launchpad-card.color-indigo .launchpad-card-icon{background:#e8eafa;color:#4e57a8}.launchpad-card.color-slate .launchpad-card-icon{background:#e9eef1;color:#536b76}
.launchpad-card strong,.launchpad-card small{display:block}.launchpad-card strong{font-size:17px;margin-bottom:6px}.launchpad-card small{color:#77909a;line-height:1.35}.launchpad-card b{font-size:24px;color:#91aab3}
.launchpad-detail dl{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.launchpad-detail dl div{padding:14px;border-radius:12px;background:#f4f8fa}.launchpad-detail dt{font-size:12px;color:#718791}.launchpad-detail dd{margin:4px 0 0;font-weight:700}
.launchpad-editor-cards{margin-top:22px;display:grid;gap:8px}
.card-editor-guide{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;margin-bottom:4px;padding:12px 14px;border:1px dashed #9fc8d4;border-radius:12px;background:#f1f9fb;color:#315d6c}.card-editor-guide>span,.card-drag-handle{font-weight:900;letter-spacing:-3px;color:#6fa5b5}.card-editor-guide>div{display:grid;gap:2px}.card-editor-guide small,.card-editor-guide em{color:#718991;font-size:11px;font-style:normal}.draggable-launchpad-card{display:grid!important;grid-template-columns:24px 1fr auto;align-items:center;cursor:grab;text-align:left}.draggable-launchpad-card:after{content:'Modifica';color:#6d848d;font-size:11px}.draggable-launchpad-card.dragging{opacity:.38;border:2px dashed #2b89a4;cursor:grabbing}
@media(max-width:1200px){.launchpad-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.launchpad-grid{grid-template-columns:1fr}.module-launchpad>header{align-items:flex-start;flex-direction:column}}

/* Superfici multicanale, AI e reporting */
.channel-tabs,
.report-tabs {
  margin-bottom: 16px;
  padding: 12px 15px;
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: #fff;
  color: #55707c;
  font-size: 11px;
  font-weight: 700;
  word-spacing: 12px;
  white-space: nowrap;
}
.report-wizard {
  padding: 20px;
}
.wizard-steps {
  padding: 12px;
  border-radius: 9px;
  background: #edf5f7;
  color: #326477;
  font-size: 11px;
  line-height: 1.8;
}
.report-result {
  margin-top: 18px;
  padding: 20px;
}
.report-bar {
  display: grid;
  grid-template-columns: 180px minmax(100px, 1fr) 60px;
  align-items: center;
  gap: 12px;
  margin: 9px 0;
}
.report-bar > i {
  display: block;
  height: 14px;
  min-width: 3px;
  border-radius: 8px;
  background: linear-gradient(90deg, var(--primary), #42a5bd);
}
.report-bar strong {
  text-align: right;
}
.campaign-form > .form-grid {
  max-height: 68vh;
  overflow: auto;
  padding-right: 6px;
}
.nav button[data-page="contact-tools"]:before {
  content: "☎";
}
.nav button[data-page="ai-models"]:before {
  content: "✦";
}
.nav button[data-page="reports"]:before {
  content: "▥";
}
.nav button[data-page="work-queue"]:before {
  content: "☏";
}
@media (max-width: 700px) {
  .report-bar {
    grid-template-columns: 100px 1fr 42px;
  }
  .campaign-form > .form-grid {
    max-height: none;
  }
}

/* Configuratore campagne: superficie di lavoro guidata */
.campaign-wizard-modal .modal-card {
  width: min(1480px, 96vw);
  max-height: 94vh;
  padding: 0;
  overflow: hidden;
}
.wizard-head {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 18px 22px;
  border-bottom: 1px solid #dce7eb;
  background: #fff;
}
.wizard-head > div:first-child {
  flex: 1;
}
.wizard-head h2 {
  margin: 2px 0 0;
}
.draft-status,
.safe-chip {
  color: #146d5c;
  background: #e8f7f1;
  border: 1px solid #bfe7d8;
  border-radius: 999px;
  padding: 7px 11px;
  font-size: 12px;
  font-weight: 700;
}
.campaign-wizard {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr) 245px;
  min-height: 680px;
  background: #f5f8fa;
}
.wizard-steps-nav {
  padding: 18px 12px;
  background: #143d50;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.wizard-steps-nav button {
  border: 0;
  background: transparent;
  color: #cfe0e8;
  text-align: left;
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border-radius: 10px;
  cursor: pointer;
}
.wizard-steps-nav button b {
  display: grid;
  place-items: center;
  min-width: 26px;
  height: 26px;
  border: 1px solid #6e91a0;
  border-radius: 50%;
}
.wizard-steps-nav button.active {
  background: #fff;
  color: #143d50;
  font-weight: 700;
}
.wizard-steps-nav button.active b {
  background: #e07135;
  border-color: #e07135;
  color: #fff;
}
.wizard-steps-nav button.done b {
  background: #27977d;
  border-color: #27977d;
  color: #fff;
}
.wizard-main {
  background: #fff;
  margin: 18px 0;
  border-radius: 14px;
  box-shadow: 0 8px 26px #183b4a12;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
}
.wizard-progress {
  height: 5px;
  background: #e7eef1;
}
.wizard-progress i {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #e07135, #f4ae5d);
  transition: width 0.2s;
}
.wizard-main > header {
  padding: 20px 24px 10px;
}
.wizard-main > header span {
  color: #71848c;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.wizard-main > header h3 {
  margin: 4px 0;
  font-size: 23px;
}
.wizard-step-body {
  padding: 10px 24px 24px;
  overflow: auto;
  flex: 1;
}
.wizard-main > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 24px;
  border-top: 1px solid #e3ebee;
}
#autosave-state {
  color: #708189;
  font-size: 12px;
}
.wizard-summary {
  padding: 28px 18px;
  background: #eef4f6;
}
.wizard-summary h3 {
  margin: 8px 0 18px;
}
.wizard-summary dl,
.approval-summary dl {
  display: grid;
  grid-template-columns: 1fr;
  gap: 3px;
}
.wizard-summary dt,
.approval-summary dt {
  color: #74868e;
  font-size: 11px;
  text-transform: uppercase;
  margin-top: 10px;
}
.wizard-summary dd,
.approval-summary dd {
  margin: 0;
  font-weight: 700;
  overflow-wrap: anywhere;
}
.wizard-summary .off {
  color: #b24b38;
}
.wizard-summary button {
  width: 100%;
  margin-top: 24px;
}
.wizard-form-grid,
.channel-editor {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
}
.wizard-form-grid .full,
.channel-editor .full {
  grid-column: 1/-1;
}
.wizard-step-body label {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-weight: 650;
  color: #294753;
}
.wizard-step-body label small {
  font-weight: 400;
  color: #6e8088;
}
.audience-mode-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.audience-mode-cards label {
  border: 1px solid #d8e4e8;
  border-radius: 12px;
  padding: 14px;
  cursor: pointer;
}
.audience-mode-cards input {
  width: auto;
}
.audience-picker {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
  margin-top: 16px;
}
.audience-picker section {
  border: 1px solid #dde7ea;
  border-radius: 12px;
  padding: 14px;
  max-height: 280px;
  overflow: auto;
}
.audience-picker section h3 {
  margin-top: 0;
}
.audience-picker section label {
  flex-direction: row;
  align-items: flex-start;
  padding: 9px 0;
  border-bottom: 1px solid #edf2f4;
}
.audience-picker section input {
  width: auto;
  margin-top: 4px;
}
.audience-picker section span {
  display: flex;
  flex-direction: column;
}
.audience-control-summary,
.legal-note,
.simulation-result {
  margin-top: 15px;
  padding: 14px;
  border-radius: 10px;
  background: #eff7fa;
  color: #315762;
}
.audience-control-summary span {
  display: block;
  margin-top: 5px;
}
.editor-mode {
  grid-column: 1/-1;
  display: flex;
  gap: 6px;
  padding-bottom: 8px;
}
.editor-mode button,
.sequence-actions button,
.variable-chips button {
  border: 1px solid #cbdcdf;
  background: #fff;
  border-radius: 8px;
  padding: 8px 11px;
  cursor: pointer;
}
.code-editor {
  min-height: 220px;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  background: #172b36;
  color: #e7f3f5;
}
.content-checks {
  display: flex;
  gap: 18px;
}
.content-checks label {
  flex-direction: row;
}
.content-checks input {
  width: auto;
}
.sms-counter {
  color: #55717c;
  font-size: 12px;
  text-align: right;
}
.phone-preview,
.whatsapp-preview {
  grid-column: 1/-1;
  width: min(360px, 100%);
  padding: 18px;
  border-radius: 16px;
  background: #e6f6f0;
  box-shadow: 0 6px 20px #183b4a15;
}
.phone-preview > span,
.whatsapp-preview > span {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: #347462;
}
.sequence-step {
  display: grid;
  grid-template-columns: 32px 1fr auto 30px;
  align-items: center;
  gap: 10px;
  margin: 8px 0;
  padding: 11px;
  border: 1px solid #dbe6e9;
  border-radius: 10px;
}
.sequence-step b {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #e07135;
  color: #fff;
}
.sequence-step button {
  border: 0;
  background: #f8e9e6;
  color: #a63e32;
  border-radius: 7px;
  height: 28px;
}
.sequence-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 14px;
}
.variable-workspace,
.preview-workspace {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 18px;
}
.variable-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.variable-chips button {
  text-align: left;
  display: flex;
  flex-direction: column;
}
.variable-chips small {
  color: #698089;
}
.variable-syntax {
  padding: 15px;
  background: #f1f5f7;
  border-radius: 10px;
  margin-top: 15px;
}
.preview-toolbar {
  grid-column: 1/-1;
  display: flex;
  align-items: center;
  gap: 8px;
}
.preview-toolbar span,
.no-delivery-banner {
  margin-left: auto;
  color: #a83f35;
  background: #fbeae7;
  border-radius: 999px;
  padding: 7px 11px;
  font-weight: 800;
  font-size: 11px;
}
.message-preview {
  min-height: 390px;
  border: 1px solid #dbe5e8;
  border-radius: 15px;
  padding: 16px;
  background: #edf3f5;
}
.message-preview iframe {
  width: 100%;
  min-height: 360px;
  border: 0;
  background: #fff;
  border-radius: 9px;
}
.preview-message {
  background: #fff;
  padding: 20px;
  border-radius: 10px;
}
.approval-summary {
  max-width: 720px;
  margin: auto;
  border: 1px solid #dce7ea;
  padding: 22px;
  border-radius: 14px;
}
.approval-summary .no-delivery-banner {
  display: inline-block;
  margin: 0 0 12px;
}
.approval-actions {
  display: flex;
  gap: 10px;
  margin-top: 20px;
}
.outcome-chips {
  padding: 13px;
  background: #eff5f7;
  border-radius: 10px;
  line-height: 2;
  color: #47616c;
}
.integration-dashboard {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 15px;
  margin: 18px 0 26px;
}
.integration-card {
  background: #fff;
  border: 1px solid #dce7ea;
  border-radius: 15px;
  padding: 17px;
  box-shadow: 0 7px 22px #173b4a0d;
}
.integration-card header {
  display: flex;
  align-items: center;
  gap: 12px;
}
.integration-card header > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: #e9f3f6;
  color: #173f51;
  font-size: 22px;
}
.integration-card h3 {
  margin: 0 0 3px;
}
.integration-card p {
  color: #71838a;
  font-size: 12px;
}
.integration-kpis {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 7px;
  margin: 16px 0;
}
.integration-kpis b {
  padding: 9px;
  background: #f4f8f9;
  border-radius: 9px;
  font-size: 20px;
}
.integration-kpis small {
  display: block;
  font-size: 10px;
  color: #71838a;
  font-weight: 500;
}
.integration-card footer {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}
.integration-card footer button {
  flex: 1;
}
.secret-policy,
.secret-policy + *,
.sip-panel {
  padding: 15px;
  border: 1px solid #cfe1e6;
  border-radius: 12px;
  background: #f4f9fa;
}
.sip-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
}
.sip-panel h3,
.sip-panel .full {
  grid-column: 1/-1;
}
.test-panel {
  border: 1px solid #d8e5e8;
  border-radius: 14px;
  padding: 22px;
}
.test-panel li {
  margin: 10px 0;
}
.channel-account-select button {
  align-self: flex-start;
  margin-top: 5px;
}
@media (max-width: 1000px) {
  .integration-dashboard {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 700px) {
  .integration-dashboard,
  .sip-panel {
    grid-template-columns: 1fr;
  }
  .sip-panel h3,
  .sip-panel .full {
    grid-column: auto;
  }
}
@media (max-width: 1100px) {
  .campaign-wizard {
    grid-template-columns: 190px minmax(0, 1fr);
  }
  .wizard-summary {
    display: none;
  }
  .audience-mode-cards {
    grid-template-columns: 1fr;
  }
  .variable-workspace,
  .preview-workspace {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 760px) {
  .campaign-wizard-modal .modal-card {
    width: 100vw;
    max-height: 100vh;
    border-radius: 0;
  }
  .wizard-head {
    flex-wrap: wrap;
  }
  .campaign-wizard {
    display: block;
    min-height: 0;
  }
  .wizard-steps-nav {
    flex-direction: row;
    overflow: auto;
  }
  .wizard-steps-nav button span {
    display: none;
  }
  .wizard-main {
    margin: 0;
    border-radius: 0;
  }
  .wizard-form-grid,
  .channel-editor,
  .audience-picker {
    grid-template-columns: 1fr;
  }
  .wizard-main > footer {
    position: sticky;
    bottom: 0;
    background: #fff;
  }
  .draft-status {
    order: 3;
    width: 100%;
  }
}

/* Moduli operativi: gerarchia visiva e schede anagrafiche richiudibili */
.module-page-head {
  min-height: 104px;
  margin-bottom: 0;
  padding: 22px 26px;
  border: 1px solid #dce7ea;
  border-radius: 18px 18px 0 0;
  background: linear-gradient(120deg, #fff 0%, #f1f8fa 100%);
  box-shadow: 0 10px 30px #1738450b;
}
.module-page-head .module-title {
  align-items: center;
}
.module-page-head .module-icon {
  width: 54px;
  height: 54px;
  border-radius: 16px;
  box-shadow: 0 9px 20px #16556f2b;
}
.module-page-head h1 {
  margin: 2px 0 0;
  font-size: 27px;
  letter-spacing: -0.4px;
}
.module-page-head p {
  margin: 4px 0 0;
  color: #71868f;
  font-size: 12px;
}
.module-tabs {
  margin: 0 0 14px;
  padding: 0 20px;
  border: 1px solid #dce7ea;
  border-top: 0;
  border-radius: 0 0 14px 14px;
  background: #fff;
}
.module-tabs button {
  padding: 13px 17px;
  border-radius: 0;
}
.module-tabs button.active {
  background: transparent;
  border-bottom: 3px solid var(--primary);
}
.module-toolbar {
  display: grid;
  grid-template-columns: minmax(170px, 220px) minmax(240px, 1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 12px;
  border: 1px solid #dfe8eb;
  background: #fff;
}
.module-toolbar .search-wrap input,
.module-toolbar select {
  min-height: 42px;
  border: 1px solid #d8e2e6;
  border-radius: 9px;
  background: #f9fbfc;
}
.toolbar-actions {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.toolbar-actions .secondary {
  min-height: 40px;
  border-radius: 8px;
  text-transform: none;
}
.module-table table {
  border-spacing: 0 7px !important;
}
.module-table tbody td {
  height: 66px !important;
}
.record-modal .record-layout {
  grid-auto-flow: row;
}
.record-modal .record-block {
  overflow: hidden;
  transition:
    border-color 0.18s ease,
    box-shadow 0.18s ease,
    transform 0.18s ease;
}
.record-modal .record-block:hover {
  border-color: #c8dce3 !important;
  box-shadow: 0 10px 26px #17384512 !important;
}
.record-modal .record-block > header {
  cursor: default;
}
.record-modal .record-block > header > div {
  min-width: 0;
}
.record-modal .record-block h3 {
  letter-spacing: 0.1px;
}
.record-modal .block-toggle {
  display: grid;
  flex: 0 0 34px;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid #d6e3e7;
  border-radius: 9px;
  background: #f5f9fa;
  color: #245d73;
  font-size: 18px;
  line-height: 1;
  transition: 0.15s ease;
}
.record-modal .block-toggle:hover {
  border-color: #8eb9c8;
  background: #e8f3f6;
}
.record-modal .record-block.collapsed > header {
  border-bottom: 0;
}
.record-modal .record-block.collapsed {
  box-shadow: 0 3px 10px #17384509 !important;
}
.record-modal .record-block-fields {
  transition: opacity 0.15s ease;
}
.record-modal label {
  font-weight: 650;
}
.record-modal input,
.record-modal select,
.record-modal textarea {
  min-height: 42px;
  padding: 10px 12px;
  border: 1px solid #d7e2e6;
  border-radius: 8px;
  background: #fbfcfd;
  box-shadow: none;
}
.record-modal input:focus,
.record-modal select:focus,
.record-modal textarea:focus {
  border-color: #4b93aa;
  box-shadow: 0 0 0 3px #4b93aa1a;
}
@media (max-width: 980px) {
  .module-toolbar {
    grid-template-columns: 1fr 1fr;
  }
  .toolbar-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }
}
@media (max-width: 700px) {
  .module-page-head {
    padding: 16px;
    border-radius: 13px 13px 0 0;
  }
  .module-page-head p {
    display: none;
  }
  .module-toolbar {
    display: flex;
    align-items: stretch;
  }
  .module-toolbar > * {
    width: 100%;
  }
  .toolbar-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
* {
  box-sizing: border-box;
}
html,
body {
  margin: 0;
  min-height: 100%;
  font:
    14px/1.45 Roboto,
    "Helvetica Neue",
    Arial,
    sans-serif;
  color: var(--ink);
  background: var(--bg);
}
button,
input,
select,
textarea {
  font: inherit;
}
button {
  cursor: pointer;
}
.ui-error-toast,
.ui-success-toast {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 3000;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 2px 16px;
  width: min(410px, calc(100vw - 32px));
  padding: 14px 15px;
  border-left: 4px solid #b3261e;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 12px 35px #172f3a35;
}
.ui-success-toast {
  border-left-color: #237a57;
}
.ui-error-toast strong,
.ui-error-toast span,
.ui-success-toast strong,
.ui-success-toast span {
  display: block;
}
.ui-error-toast span,
.ui-success-toast span {
  color: var(--muted);
  font-size: 12px;
}
.ui-error-toast button,
.ui-success-toast button {
  grid-column: 2;
  grid-row: 1 / 3;
  border: 0;
  background: transparent;
  color: #73858d;
  font-size: 20px;
}
.login {
  min-height: 100vh;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #103f53, #16556f 55%, #277894);
}
.login-card {
  width: min(410px, 92vw);
  padding: 38px;
  background: #fff;
  border-radius: 3px;
  box-shadow: 0 12px 35px #0005;
}
.brand {
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 0.1px;
}
.brand span {
  font-weight: 300;
  color: #cfe7f1;
}
.login-card .brand span {
  color: var(--primary);
}
.login-card p,
.muted {
  color: var(--muted);
}
.impersonation-banner {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: #7c2d12;
  color: #fff;
  padding: 10px 22px;
  text-align: center;
  box-shadow: 0 2px 8px #0003;
}
.impersonation-banner button {
  margin-left: 16px;
  background: #fff;
  color: #7c2d12;
  border: 0;
  border-radius: 7px;
  padding: 7px 12px;
  font-weight: 700;
}
.calendar-tabs {
  display: flex;
  gap: 8px;
  margin: 0 0 16px;
}
.calendar-tabs button {
  border: 1px solid var(--border);
  background: #fff;
  padding: 8px 14px;
  border-radius: 8px;
}
.calendar-tabs .active {
  background: var(--primary);
  color: #fff;
}
.calendar-row {
  display: grid;
  grid-template-columns: 180px 1fr;
  gap: 20px;
  padding: 14px 4px;
  border-bottom: 1px solid var(--border);
}
.calendar-row time {
  color: var(--muted);
}
.calendar-row small,
.table-wrap td small {
  display: block;
  color: var(--muted);
  margin-top: 3px;
}
.permission-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.permission-grid span {
  background: #eef2ff;
  color: #3730a3;
  padding: 7px 10px;
  border-radius: 999px;
}
.empty-state {
  text-align: center;
  padding: 44px;
  color: var(--muted);
}
.security-toolbar {
  display: flex;
  gap: 18px;
  align-items: end;
  margin-bottom: 18px;
}
.permission-matrix {
  display: grid;
  gap: 14px;
  margin-bottom: 20px;
}
.matrix-module {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 16px;
}
.matrix-module h3 {
  margin-top: 0;
}
.matrix-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  margin: 12px 0;
}
.matrix-actions label,
.field-matrix label,
.policy-row {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.field-matrix > div {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) repeat(4, auto);
  gap: 12px;
  padding: 10px;
  border-bottom: 1px solid var(--border);
}
.org-chart {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  overflow: auto;
}
.org-node,
.team-node {
  border: 1px solid #c7d2fe;
  background: #eef2ff;
  border-radius: 10px;
  padding: 10px;
  min-width: 150px;
}
.org-children {
  display: flex;
  gap: 8px;
  margin-top: 12px;
}
.team-node small {
  display: block;
  margin-top: 6px;
}
.calendar-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(110px, 1fr));
  gap: 1px;
  background: var(--border);
}
.calendar-grid.day {
  grid-template-columns: 1fr;
}
.calendar-day {
  min-height: 120px;
  background: #fff;
  padding: 8px;
}
.calendar-day header {
  font-size: 12px;
  color: var(--muted);
  margin-bottom: 8px;
}
.calendar-day button {
  display: block;
  width: 100%;
  border: 0;
  border-left: 3px solid var(--primary);
  background: #eef2ff;
  text-align: left;
  padding: 5px;
  margin: 3px 0;
  border-radius: 4px;
}
@media (max-width: 800px) {
  .security-toolbar {
    display: block;
  }
  .field-matrix > div {
    grid-template-columns: 1fr 1fr;
  }
  .calendar-grid {
    grid-template-columns: 1fr;
  }
  .calendar-day {
    min-height: auto;
  }
}
label {
  display: grid;
  gap: 6px;
  margin: 14px 0;
  font-weight: 500;
}
input,
select,
textarea {
  width: 100%;
  min-height: 38px;
  padding: 8px 10px;
  border: 0;
  border-bottom: 1px solid #aeb8bd;
  background: #fafafa;
  outline: none;
  border-radius: 2px;
}
input:focus,
select:focus,
textarea:focus {
  border-color: var(--primary);
  box-shadow: 0 2px 0 var(--primary);
}
textarea {
  min-height: 90px;
  resize: vertical;
}
.primary,
.secondary,
.danger {
  border: 0;
  border-radius: 2px;
  padding: 9px 18px;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.35px;
}
.primary {
  background: var(--primary);
  color: #fff;
}
.primary:hover {
  background: var(--primary-dark);
}
.secondary {
  background: #fff;
  color: var(--ink);
  border: 1px solid #cbd2d6;
}
.secondary:hover {
  background: #f3f5f6;
}
.danger {
  background: #fff;
  color: var(--danger);
  border: 1px solid #dfb4b0;
}
.shell {
  display: grid;
  grid-template-columns: 226px minmax(0, 1fr);
  min-height: 100vh;
}
.sidebar {
  background: #26383f;
  color: #dce5e9;
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  width: 226px;
  z-index: 20;
  box-shadow: 2px 0 8px #0002;
}
.sidebar .brand {
  height: 58px;
  padding: 16px 18px;
  background: var(--primary);
  color: #fff;
}
.nav {
  padding: 12px 0;
}
.nav:before {
  content: "MARKETING";
  display: block;
  padding: 8px 18px;
  color: #82959e;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.2px;
}
.nav button {
  display: flex;
  align-items: center;
  width: 100%;
  height: 42px;
  padding: 0 18px;
  border: 0;
  border-left: 3px solid transparent;
  background: transparent;
  color: #dce5e9;
  text-align: left;
}
.nav button:before {
  content: "›";
  width: 22px;
  color: #8fa5ae;
  font-size: 19px;
}
.nav button:hover {
  background: #ffffff0c;
}
.nav button.active {
  background: #ffffff12;
  border-left-color: #51a9ce;
  color: #fff;
}
.main {
  grid-column: 2;
  min-width: 0;
}
.topbar {
  height: 58px;
  position: sticky;
  top: 0;
  z-index: 15;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 24px;
  background: #fff;
  border-bottom: 1px solid var(--line);
  box-shadow: 0 1px 5px #0001;
}
.topbar > span:first-child {
  display: grid;
  gap: 2px;
  line-height: 1.25;
}
.topbar-context {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.topbar > span:first-child strong {
  color: var(--ink);
  font-size: 18px;
}
.topbar > span:first-child small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 500;
}
.topbar:before {
  content: "☰";
  margin-right: 15px;
  color: var(--primary);
  font-size: 20px;
}
.topbar > span:first-child {
  margin-right: auto;
  color: var(--muted);
}
.content {
  padding: 22px 24px 42px;
  max-width: 1600px;
  margin: auto;
}
.page-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 58px;
  margin: -22px -24px 18px;
  padding: 10px 24px;
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.page-head h1,
.page-head h2 {
  margin: 0;
  font-size: 20px;
  font-weight: 400;
}
.page-head .module-title {
  display: flex;
  align-items: center;
  gap: 12px;
}
.module-icon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: var(--primary);
  color: #fff;
  font-size: 17px;
}
.breadcrumbs {
  font-size: 12px;
  color: var(--muted);
  margin-bottom: 2px;
}
.grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}
.card {
  background: #fff;
  border: 0;
  border-radius: 3px;
  padding: 18px;
  box-shadow: 0 1px 4px #0002;
}
.metric {
  border-top: 3px solid var(--primary);
}
.metric strong {
  display: block;
  font-size: 29px;
  font-weight: 300;
  margin-top: 8px;
}
.commission-metric-link {
  display: block;
  width: fit-content;
  margin: 2px 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: 28px;
  font-weight: 800;
  line-height: 1.1;
  cursor: pointer;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
.commission-metric-link:hover,
.commission-metric-link:focus-visible {
  color: var(--accent);
}
.toolbar {
  display: flex;
  align-items: center;
  gap: 7px;
  min-height: 52px;
  padding: 7px 10px;
  margin-bottom: 0;
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.toolbar .search-wrap {
  position: relative;
  flex: 1;
  max-width: 380px;
}
.toolbar input {
  background: #f5f6f7;
  padding-left: 34px;
  border: 1px solid #e1e5e7;
}
.toolbar .search-wrap:before {
  content: "⌕";
  position: absolute;
  left: 11px;
  top: 7px;
  font-size: 20px;
  color: #78878e;
}
.view-select {
  max-width: 210px;
}
.table-wrap {
  overflow: auto;
  background: #fff;
  border: 0;
  border-radius: 0;
  box-shadow: 0 1px 4px #0002;
}
table {
  width: 100%;
  border-collapse: collapse;
  min-width: 760px;
}
th,
td {
  text-align: left;
  padding: 10px 12px;
  border-bottom: 1px solid #e7eaec;
  height: 43px;
}
th {
  position: sticky;
  top: 0;
  background: #f6f7f8;
  color: #53636a;
  font-size: 11px;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.35px;
  white-space: nowrap;
}
th.sortable {
  cursor: pointer;
}
th.sortable:hover {
  color: var(--primary);
}
tbody tr {
  cursor: pointer;
}
tbody tr:hover {
  background: var(--hover);
}
tbody tr.selected {
  background: var(--primary-soft);
}
.checkcell {
  width: 42px;
  text-align: center;
}
.checkcell input {
  min-height: auto;
  width: auto;
}
.record-link {
  appearance: none;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--primary);
  font-weight: 500;
  cursor: pointer;
  text-align: left;
}
.assigned-user {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  font-weight: 650;
}
.assigned-user > span {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: var(--primary-soft);
  color: var(--primary);
  font-size: 10px;
  font-weight: 800;
}
.company-name,
.record-heading {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.logo-cell {
  display: flex;
  width: 52px;
  align-items: center;
  justify-content: center;
}
.company-logo {
  width: 42px;
  height: 42px;
  object-fit: contain;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
  padding: 4px;
  flex: 0 0 auto;
}
.company-logo.detail {
  width: 52px;
  height: 52px;
  border-radius: 11px;
}
.badge {
  display: inline-block;
  padding: 3px 9px;
  border-radius: 10px;
  background: #e8eef1;
  color: #3d5965;
  font-size: 12px;
}
.badge.ok {
  background: #e7f3e8;
  color: var(--ok);
}
.pager {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 10px 12px;
  background: #fff;
  border-top: 1px solid var(--line);
  color: var(--muted);
}
.pager button {
  width: 32px;
  height: 30px;
  padding: 0;
}
.modal {
  position: fixed;
  inset: 0;
  z-index: 100;
  background: #10283099;
  display: grid;
  place-items: center;
  padding: 18px;
}
.modal-card {
  background: #fff;
  width: min(820px, 96vw);
  max-height: 92vh;
  overflow: auto;
  border-radius: 3px;
  box-shadow: 0 14px 45px #0005;
}
.modal-card > .page-head,
.modal-card > h2 {
  margin: 0;
  padding: 16px 20px;
  border-bottom: 1px solid var(--line);
}
.modal-card > form,
.modal-card > p,
.modal-card > #preview {
  margin: 0;
  padding: 0 20px 20px;
}
.modal-card > input {
  margin: 0 20px;
  width: calc(100% - 40px);
}
.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 24px;
}
.form-grid .full {
  grid-column: 1/-1;
}
.form-block {
  grid-column: 1/-1;
  margin: 16px -20px 0;
  padding: 0 20px 8px;
  border-top: 1px solid var(--line);
}
.form-block h3 {
  font-size: 14px;
  font-weight: 600;
  color: var(--primary);
  text-transform: uppercase;
}
.form-actions {
  position: sticky;
  bottom: 0;
  grid-column: 1/-1;
  margin: 16px -20px -20px;
  padding: 12px 20px;
  background: #fff;
  border-top: 1px solid var(--line);
  text-align: right;
}
.filter-builder {
  padding: 0 20px 20px;
}
.filter-group {
  border: 1px solid var(--line);
  background: #fafbfb;
  padding: 12px;
  margin: 10px 0;
}
.filter-row {
  display: grid;
  grid-template-columns: 1fr 150px 1fr 36px;
  gap: 8px;
  align-items: center;
  margin: 8px 0;
}
.filter-row button {
  height: 36px;
}
.column-picker {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
  padding: 10px 0;
}
.column-picker label {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 8px;
  background: #f6f7f8;
}
.column-picker input {
  width: auto;
  min-height: auto;
}
.column-order-form {
  padding: 18px 22px 0;
}
.column-order-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 15px;
}
.column-order-grid > section {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #f8fbfc;
}
.column-order-grid > section > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 14px;
  border-bottom: 1px solid var(--line);
  background: #eef5f7;
}
.column-order-grid header span {
  color: var(--muted);
  font-size: 10px;
  text-transform: uppercase;
}
.column-order-list {
  min-height: 250px;
  max-height: 430px;
  overflow: auto;
  padding: 8px;
  transition: border-color 0.15s ease, background 0.15s ease;
}
.column-order-list.drop-active {
  background: #e9f7fa;
  box-shadow: inset 0 0 0 2px var(--primary);
}
.column-order-item {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 48px;
  margin-bottom: 6px;
  padding: 7px 8px;
  border: 1px solid #dce6e9;
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 2px 7px #17384509;
  cursor: grab;
  user-select: none;
}
.column-order-item.dragging {
  opacity: 0.45;
  border-color: var(--primary);
}
.column-order-item strong {
  flex: 1;
  font-size: 12px;
}
.drag-handle {
  cursor: grab;
  color: #8ca0a8;
  font-weight: 800;
  letter-spacing: -3px;
}
.column-move {
  width: 30px;
  height: 30px;
  padding: 0;
  border: 1px solid #d4e0e4;
  border-radius: 7px;
  background: #f7fafb;
  color: var(--primary);
  cursor: pointer;
}
.column-move:hover:not(:disabled) {
  border-color: #8eb9c8;
  background: var(--primary-soft);
}
.column-move:disabled {
  opacity: 0.3;
  cursor: default;
}
.import-workspace {
  padding: 20px 22px;
  background: #f5f8f9;
}
.import-intro,
.import-step,
.import-check,
.import-preview-table {
  margin-bottom: 14px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #fff;
  box-shadow: var(--shadow-sm);
}
.import-intro p,
.import-step p {
  margin: 5px 0 12px;
}
.import-summary {
  display: flex;
  align-items: baseline;
  gap: 9px;
  margin: 16px 2px;
}
.import-summary strong {
  color: var(--primary);
  font-size: 28px;
}
.import-summary span {
  color: var(--muted);
  font-size: 12px;
}
.import-grid {
  display: grid;
  grid-template-columns: 1.25fr 0.75fr;
  gap: 14px;
}
.import-step > header {
  margin-bottom: 13px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e8eef0;
}
.mapping-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 12px;
  max-height: 390px;
  overflow: auto;
}
.duplicate-fields {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6px;
  margin: 8px 0 14px;
}
.duplicate-fields label,
.create-import-list span {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  padding: 8px;
  border-radius: 8px;
  background: #f5f9fa;
}
.duplicate-fields input,
.create-import-list input {
  width: auto;
  min-height: auto;
}
.import-check-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.import-check-metrics > div {
  padding: 13px;
  border-radius: 10px;
  background: #edf3f5;
}
.import-check-metrics .ok {
  background: #e9f7f0;
  color: #287354;
}
.import-check-metrics .warning {
  background: #fff2df;
  color: #9b5a0c;
}
.import-check-metrics strong,
.import-check-metrics span {
  display: block;
}
.import-check-metrics strong {
  font-size: 22px;
}
.duplicate-preview {
  margin-top: 13px;
}
.duplicate-preview > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 2px;
  border-bottom: 1px solid #edf1f3;
}
.duplicate-preview small {
  color: var(--muted);
}
.import-preview-table pre {
  max-height: 190px;
  overflow: auto;
  white-space: pre-wrap;
  color: #49636f;
  font-size: 10px;
}
.tabs {
  display: flex;
  background: #fff;
  border-bottom: 1px solid var(--line);
  padding: 0 18px;
}
.tabs button {
  border: 0;
  border-bottom: 3px solid transparent;
  background: transparent;
  padding: 13px 16px;
  color: var(--muted);
}
.tabs button.active {
  color: var(--primary);
  border-bottom-color: var(--primary);
}
.module-builder-card {
  padding: 0;
}
.module-builder-card header {
  padding: 15px 18px;
  border-bottom: 1px solid var(--line);
  display: flex;
  justify-content: space-between;
}
.module-builder-card .field-list {
  padding: 8px 18px 16px;
}
.field-item {
  display: grid;
  grid-template-columns: 1fr 140px 80px;
  gap: 10px;
  padding: 9px 0;
  border-bottom: 1px solid #edf0f1;
}
.empty {
  text-align: center;
  padding: 48px;
  color: var(--muted);
}
.steps {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}
.step {
  position: relative;
  border-left: 3px solid var(--primary);
  padding: 10px 14px;
  background: #f4f6f7;
  border-radius: 2px;
}
.error {
  color: var(--danger);
  margin-top: 12px;
}
pre {
  max-height: 260px;
  overflow: auto;
  background: #f5f6f7;
  padding: 10px;
  font-size: 12px;
}
.hidden {
  display: none !important;
}
.layout-editor {
  display: grid;
  grid-template-columns: 230px 1fr;
  gap: 18px;
  align-items: start;
}
.layout-modules,
.layout-block,
.layout-toolbar {
  background: #fff;
  box-shadow: 0 1px 4px #0002;
}
.layout-modules h3 {
  margin: 0;
  padding: 15px 16px;
  border-bottom: 1px solid var(--line);
  font-size: 13px;
  text-transform: uppercase;
  color: var(--muted);
}
.layout-modules button {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 0;
  border-left: 3px solid transparent;
  background: #fff;
  padding: 11px 14px;
  text-align: left;
}
.layout-modules button:hover {
  background: #f5f7f8;
}
.layout-modules button.active {
  border-left-color: var(--primary);
  background: var(--primary-soft);
  color: var(--primary);
}
.layout-modules small,
.layout-block small {
  color: var(--muted);
}
.layout-canvas {
  display: grid;
  gap: 14px;
}
.layout-toolbar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 15px;
}
.layout-toolbar > div {
  display: grid;
  margin-right: auto;
}
.layout-toolbar span {
  font-size: 12px;
  color: var(--muted);
}
.layout-block {
  border-top: 3px solid var(--primary);
}
.layout-block > header {
  display: flex;
  justify-content: space-between;
  padding: 14px 16px;
  border-bottom: 1px solid var(--line);
}
.layout-block > header div {
  display: grid;
}
.layout-block > header span {
  color: var(--muted);
  font-size: 12px;
}
.layout-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 14px;
}
.layout-field {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 11px 12px;
  background: #f8f9fa;
  border: 1px solid #e1e5e7;
  border-radius: 2px;
  text-align: left;
}
.layout-field:hover {
  border-color: var(--primary);
  background: var(--primary-soft);
}
.layout-field small {
  color: var(--muted);
}
.layout-block > footer {
  display: flex;
  justify-content: flex-end;
  gap: 7px;
  padding: 9px 14px;
  border-top: 1px solid var(--line);
  background: #fafbfb;
}
.record-layout {
  padding: 16px 20px 72px !important;
  background: #eef0f2;
}
.record-block {
  margin-bottom: 15px;
  background: #fff;
  box-shadow: 0 1px 4px #0002;
}
.record-block > header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  border-bottom: 1px solid var(--line);
}
.record-block h3 {
  margin: 0;
  color: var(--primary);
  font-size: 14px;
  text-transform: uppercase;
}
.record-block header p {
  margin: 2px 0 0;
  color: var(--muted);
  font-size: 12px;
}
.block-toggle {
  border: 0;
  background: transparent;
  color: var(--primary);
  font-size: 18px;
}
.record-block-fields {
  display: grid;
  gap: 0 28px;
  padding: 5px 18px 17px;
}
.record-block-fields.columns-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.record-block-fields.columns-1 {
  grid-template-columns: 1fr;
}
.record-block.collapsed .record-block-fields {
  display: none;
}
.field-help {
  display: block;
  color: var(--muted);
  font-weight: 400;
}
.related-panel {
  padding: 20px;
  background: #eef0f2;
  min-height: 300px;
}
.related-head {
  padding: 14px 16px;
  background: #fff;
  border-bottom: 1px solid var(--line);
}
.related-head h3 {
  margin: 0;
}
.related-head p {
  margin: 3px 0;
  color: var(--muted);
}
.process-summary {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 14px 18px;
  margin-bottom: 15px;
  background: #fff;
  box-shadow: 0 1px 4px #0002;
}
.process-summary > div {
  display: grid;
  min-width: 120px;
  border-right: 1px solid var(--line);
}
.process-summary strong {
  font-size: 28px;
  font-weight: 300;
  color: var(--primary);
}
.process-summary span,
.process-summary p {
  color: var(--muted);
}
.process-editor {
  display: grid;
  grid-template-columns: 220px minmax(420px, 1fr) 290px;
  min-height: calc(100vh - 155px);
  margin: -18px -24px -42px;
  border-top: 1px solid var(--line);
}
.process-palette,
.process-inspector {
  background: #fff;
  padding: 15px;
  overflow: auto;
}
.process-palette {
  border-right: 1px solid var(--line);
}
.process-inspector {
  border-left: 1px solid var(--line);
}
.process-palette h3 {
  margin: 0;
  font-size: 14px;
  text-transform: uppercase;
}
.process-palette > p {
  color: var(--muted);
  font-size: 12px;
}
.process-palette > button {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  margin: 7px 0;
  padding: 10px;
  border: 1px solid var(--line);
  border-left-width: 4px;
  background: #fff;
  text-align: left;
}
.process-palette > button span {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #eef1f2;
}
.palette-event {
  border-left-color: #283593 !important;
}
.palette-condition {
  border-left-color: #ffa726 !important;
}
.palette-action {
  border-left-color: #2e7d32 !important;
}
.palette-wait {
  border-left-color: #90a4ae !important;
}
.palette-ai {
  border-left-color: #7b1fa2 !important;
}
.process-meta {
  margin-top: 20px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}
.process-canvas {
  overflow: auto;
  background-color: #f6f8f9;
  background-image:
    linear-gradient(#dfe4e6 1px, transparent 1px),
    linear-gradient(90deg, #dfe4e6 1px, transparent 1px);
  background-size: 22px 22px;
}
.canvas-grid {
  width: min(620px, 90%);
  margin: 30px auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.workflow-start,
.workflow-end {
  min-width: 110px;
  padding: 9px 20px;
  border-radius: 22px;
  background: #263238;
  color: #fff;
  text-align: center;
  font-size: 11px;
  letter-spacing: 0.6px;
}
.workflow-start small {
  color: #cfd8dc;
}
.workflow-node {
  position: relative;
  width: min(430px, 90%);
  margin: 31px 0 0;
  background: #fff;
  border-radius: 3px;
  box-shadow: 0 2px 8px #0003;
  border-left: 5px solid var(--primary);
  cursor: pointer;
}
.workflow-node:before,
.workflow-add:before,
.workflow-end:before {
  content: "";
  position: absolute;
  top: -32px;
  left: 50%;
  width: 2px;
  height: 32px;
  background: #90a4ae;
}
.workflow-node:after,
.workflow-add:after {
  content: "▼";
  position: absolute;
  top: -13px;
  left: calc(50% - 6px);
  color: #607d8b;
  font-size: 10px;
}
.workflow-node.selected {
  outline: 3px solid #90caf9;
  box-shadow: 0 4px 13px #0004;
}
.workflow-node header {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 13px 14px;
}
.workflow-node header > span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #edf1f2;
  font-size: 18px;
}
.workflow-node header > div:nth-child(2) {
  display: grid;
  flex: 1;
}
.workflow-node small {
  color: var(--muted);
}
.node-event {
  border-left-color: #283593;
}
.node-condition {
  border-left-color: #ffa726;
}
.node-action {
  border-left-color: #2e7d32;
}
.node-wait {
  border-left-color: #90a4ae;
}
.node-ai {
  border-left-color: #7b1fa2;
}
.node-tools {
  display: flex !important;
  flex: none !important;
}
.node-tools button {
  border: 0;
  background: transparent;
  color: var(--muted);
  padding: 5px;
}
.workflow-add {
  position: relative;
  width: 34px;
  height: 34px;
  margin: 31px 0;
  border: 1px solid #90a4ae;
  border-radius: 50%;
  background: #fff;
  color: var(--primary);
  font-size: 19px;
}
.workflow-end {
  position: relative;
  background: #607d8b;
}
.process-inspector > header {
  display: flex;
  gap: 10px;
  align-items: center;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--line);
}
.process-inspector > header > span {
  font-size: 24px;
  color: var(--primary);
}
.process-inspector > header > div {
  display: grid;
}
.process-inspector small {
  color: var(--muted);
}
.process-row-summary {
  display: block;
  max-width: 360px;
  margin-top: 4px;
  color: var(--muted);
  line-height: 1.35;
}
.badge.code {
  color: #5e35b1;
  background: #ede7f6;
}
.code-process-sheet {
  display: grid;
  gap: 18px;
}
.code-process-meta {
  display: grid;
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  gap: 10px;
}
.code-process-meta span,
.code-process-sheet section,
.locked-process-note {
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #f8fafb;
}
.code-process-meta span {
  display: grid;
  gap: 5px;
}
.code-process-meta small {
  color: var(--muted);
}
.code-process-sheet section h3 {
  margin: 0 0 8px;
}
.code-process-sheet section p,
.code-process-sheet section ol {
  margin-bottom: 0;
}
.locked-process-note {
  color: #5e35b1;
  background: #f5f1fb;
}
@media (max-width: 900px) {
  .code-process-meta {
    grid-template-columns: repeat(2, minmax(130px, 1fr));
  }
}
.inspector-form {
  padding-top: 5px;
}
.simulated-provider {
  padding: 9px;
  background: #f3e5f5;
  color: #6a1b9a;
  font-size: 12px;
}
@media (max-width: 900px) {
  .process-editor {
    grid-template-columns: 170px 1fr;
  }
  .process-inspector {
    grid-column: 1/-1;
    border-left: 0;
    border-top: 1px solid var(--line);
  }
  .layout-editor {
    grid-template-columns: 1fr;
  }
  .layout-modules {
    display: flex;
    overflow: auto;
  }
  .layout-modules h3 {
    display: none;
  }
  .layout-modules button {
    min-width: 150px;
  }
  .record-block-fields.columns-2 {
    grid-template-columns: 1fr;
  }
  .shell {
    grid-template-columns: 64px minmax(0, 1fr);
  }
  .sidebar {
    width: 64px;
  }
  .sidebar .brand {
    font-size: 0;
    text-align: center;
  }
  .sidebar .brand:before {
    content: "MH";
    font-size: 17px;
  }
  .nav:before {
    display: none;
  }
  .nav button {
    font-size: 0;
    padding: 0 18px;
  }
  .nav button:before {
    font-size: 20px;
  }
  .main {
    grid-column: 2;
  }
  .grid {
    grid-template-columns: 1fr 1fr;
  }
  .form-grid {
    grid-template-columns: 1fr;
  }
  .content {
    padding: 18px;
  }
  .page-head {
    margin: -18px -18px 15px;
    padding: 10px 18px;
  }
}
@media (max-width: 560px) {
  .process-editor {
    grid-template-columns: 1fr;
    margin-left: -18px;
    margin-right: -18px;
  }
  .process-palette {
    border-right: 0;
  }
  .grid {
    grid-template-columns: 1fr;
  }
  .topbar > span:first-child {
    display: none;
  }
  .topbar {
    padding: 0 10px;
  }
  .toolbar {
    align-items: stretch;
    flex-direction: column;
  }
  .toolbar .search-wrap,
  .view-select {
    max-width: none;
  }
  .filter-row {
    grid-template-columns: 1fr;
  }
  .page-head {
    align-items: flex-start;
    gap: 10px;
    flex-direction: column;
  }
  .form-grid {
    display: block;
  }
  .modal {
    padding: 6px;
  }
  .column-order-grid {
    grid-template-columns: 1fr;
  }
  .column-order-list {
    min-height: 140px;
    max-height: 260px;
  }
  .import-grid,
  .mapping-grid {
    grid-template-columns: 1fr;
  }
  .duplicate-preview > div {
    flex-direction: column;
  }
}

/* Visual refresh 2026: CRM workspace */
:root {
  --primary: #125b78;
  --primary-dark: #0b4057;
  --primary-soft: #e8f3f7;
  --accent: #f4a340;
  --bg: #f3f6f8;
  --paper: #fff;
  --ink: #162a35;
  --muted: #6b7e88;
  --line: #dde6ea;
  --hover: #eef7fa;
  --shadow-sm: 0 1px 2px #1634420a, 0 4px 16px #1634420a;
  --shadow-lg: 0 20px 60px #0c2f3e24;
  --sidebar-start: #102f3d;
  --sidebar-mid: #173d4c;
  --sidebar-end: #122e3a;
  --sidebar-text: #c9d9df;
  --sidebar-muted: #82bdd2;
  --active-start: #2483a6;
  --active-end: #237796;
  --page-glow: #e3f1f6;
}
html,
body {
  font-family:
    Inter,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  letter-spacing: -0.005em;
  background:
    radial-gradient(circle at 90% 0, var(--page-glow) 0, transparent 25%), var(--bg);
}
.shell {
  grid-template-columns: 244px minmax(0, 1fr);
}
.sidebar {
  width: 244px;
  background: linear-gradient(180deg, var(--sidebar-start) 0%, var(--sidebar-mid) 58%, var(--sidebar-end) 100%);
  box-shadow: 8px 0 32px #0e2d3a14;
}
.sidebar .brand {
  height: 72px;
  padding: 22px 24px;
  background: transparent;
  border-bottom: 1px solid #ffffff12;
  font-size: 19px;
  font-weight: 750;
  letter-spacing: 0.2px;
}
.sidebar .brand span {
  display: block;
  margin-top: -2px;
  font-size: 11px;
  letter-spacing: 1.7px;
  text-transform: uppercase;
  color: var(--sidebar-muted);
  font-weight: 600;
}
.nav {
  padding: 20px 12px;
  height: calc(100vh - 72px);
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: #ffffff26 transparent;
}
.nav::-webkit-scrollbar {
  width: 6px;
}
.nav::-webkit-scrollbar-thumb {
  border-radius: 8px;
  background: #ffffff26;
}
.nav:before {
  padding: 4px 12px 10px;
  color: #7192a0;
  letter-spacing: 1.6px;
}
.nav button {
  height: 46px;
  padding: 0 14px;
  margin: 3px 0;
  border: 0;
  border-radius: 10px;
  color: var(--sidebar-text);
  font-size: 13px;
  font-weight: 550;
  transition: 0.18s ease;
}
.nav button:before {
  content: "";
  width: 8px;
  height: 8px;
  margin-right: 13px;
  border: 2px solid #75a6ba;
  border-radius: 3px;
  transform: rotate(45deg);
  font-size: 0;
}
.nav button:hover {
  background: #ffffff0d;
  transform: translateX(2px);
}
.nav button.active {
  background: linear-gradient(90deg, var(--active-start), var(--active-end));
  box-shadow: 0 8px 18px #071e2855;
  color: #fff;
}
.nav button.active:before {
  border-color: #fff;
  background: #ffffff35;
}
.main {
  grid-column: 2;
}
.topbar {
  height: 72px;
  padding: 0 30px;
  background: #ffffffdc;
  backdrop-filter: blur(16px);
  border-bottom: 1px solid #dce6ea;
  box-shadow: none;
}
.topbar:before {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  margin-right: 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #fff;
  font-size: 17px;
}
.topbar > span:first-child {
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0.7px;
  text-transform: uppercase;
}
.topbar .secondary {
  padding: 7px 11px;
  border-radius: 8px;
  text-transform: none;
  letter-spacing: 0;
}
.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap}.visual-theme-control{display:flex;align-items:center;gap:7px;margin-right:5px;padding:4px 5px 4px 10px;border:1px solid var(--line);border-radius:10px;background:var(--paper);box-shadow:var(--shadow-sm);color:var(--muted);font-size:11px;font-weight:750}.visual-theme-control select{width:168px;min-height:32px;padding:5px 27px 5px 9px;border:0;border-radius:7px;background:var(--primary-soft);color:var(--primary-dark);font-size:12px;font-weight:750;box-shadow:none}.visual-theme-control select:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 20%,transparent)}
.topbar-mail-shortcut{display:grid;place-items:center;min-width:38px;height:38px;padding:0!important;font-size:18px!important;line-height:1}
.topbar>.topbar-spacer:first-child{display:block;width:0;min-width:0;margin-right:auto;padding:0;overflow:hidden}
/* Varianti grafiche selezionabili. Il tema attuale resta il fallback autorevole. */
:root[data-theme="alba"]{--primary:#1976b9;--primary-dark:#105486;--primary-soft:#e8f5ff;--accent:#ff7a59;--bg:#f6fbff;--ink:#17324a;--muted:#647d91;--line:#d8e8f2;--hover:#edf8ff;--sidebar-start:#0c4d78;--sidebar-mid:#126d9d;--sidebar-end:#0c4168;--sidebar-text:#e8f7ff;--sidebar-muted:#9cdaef;--active-start:#ff7655;--active-end:#f5a623;--page-glow:#dff3ff}
:root[data-theme="aqua"]{--primary:#008f91;--primary-dark:#006467;--primary-soft:#e0f8f5;--accent:#7868d7;--bg:#f2fcfb;--ink:#173f42;--muted:#648285;--line:#d4ece8;--hover:#e6f8f5;--sidebar-start:#075a60;--sidebar-mid:#08777b;--sidebar-end:#064d53;--sidebar-text:#e4fbf8;--sidebar-muted:#94ddd5;--active-start:#19b8ad;--active-end:#6d70d8;--page-glow:#d5f7f1}
:root[data-theme="aurora"]{--primary:#6b67cf;--primary-dark:#4d499e;--primary-soft:#f0edff;--accent:#ed7da9;--bg:#f9f8ff;--ink:#303353;--muted:#777894;--line:#e5e0f1;--hover:#f2effc;--sidebar-start:#474878;--sidebar-mid:#62629a;--sidebar-end:#3d3f6b;--sidebar-text:#f4f2ff;--sidebar-muted:#c9c5f0;--active-start:#8b80e7;--active-end:#eb8eae;--page-glow:#eee7ff}
:root[data-theme="citrus"]{--primary:#1667c5;--primary-dark:#0e478c;--primary-soft:#e9f2ff;--accent:#f08a24;--bg:#f7fafc;--ink:#20364b;--muted:#697f90;--line:#dce6ed;--hover:#edf5fb;--sidebar-start:#123f70;--sidebar-mid:#165890;--sidebar-end:#0e345f;--sidebar-text:#edf6ff;--sidebar-muted:#a9d2f4;--active-start:#86bf20;--active-end:#f28a20;--page-glow:#ecf6d9}

:root:not([data-theme="current"]) .primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));box-shadow:0 7px 16px color-mix(in srgb,var(--primary) 28%,transparent)}
:root:not([data-theme="current"]) .module-icon,:root:not([data-theme="current"]) .management-icon{background:linear-gradient(145deg,var(--primary),var(--primary-dark));box-shadow:0 8px 18px color-mix(in srgb,var(--primary) 28%,transparent)}
:root:not([data-theme="current"]) .metric-icon,:root:not([data-theme="current"]) .user-identity>span{background:var(--primary-soft);color:var(--primary)}
:root:not([data-theme="current"]) .management-hero{border-color:var(--line);background:radial-gradient(circle at 88% 12%,var(--page-glow) 0,transparent 36%),linear-gradient(135deg,#fff,var(--primary-soft))}
:root:not([data-theme="current"]) .card,:root:not([data-theme="current"]) .management-summary article,:root:not([data-theme="current"]) .management-toolbar{border-color:var(--line)}
:root[data-theme="alba"] .topbar{border-top:3px solid #ff7655}:root[data-theme="aqua"] .topbar{border-top:3px solid #18b7ad}:root[data-theme="aurora"] .topbar{border-top:3px solid #ed8db2}:root[data-theme="citrus"] .topbar{border-top:3px solid #91c52b}
@media(max-width:1100px){.visual-theme-control>span{display:none}.visual-theme-control select{width:132px}.topbar-actions{font-size:0}.topbar-actions button{font-size:12px}}
@media(max-width:760px){.topbar{height:auto;min-height:72px;align-items:flex-start;gap:8px;padding:10px 14px}.topbar-actions{flex-wrap:wrap}.visual-theme-control{order:-1;width:100%;margin:0}.visual-theme-control>span{display:inline}.visual-theme-control select{width:100%}}

/* Ogni concept modifica anche la composizione del workspace, non soltanto la palette. */
:root[data-theme="alba"] body{background:linear-gradient(145deg,#eef9ff 0%,#fff9ed 72%,#fff3ea 100%)}
:root[data-theme="alba"] .sidebar{width:258px;background:radial-gradient(circle at 20% 8%,#268fc7 0,transparent 29%),linear-gradient(180deg,#073c68 0%,#0a5f91 62%,#073659 100%)}
:root[data-theme="alba"] .shell{grid-template-columns:258px minmax(0,1fr)}
:root[data-theme="alba"] .sidebar .brand{height:88px;padding:27px 25px;border-bottom:0}
:root[data-theme="alba"] .nav{height:calc(100vh - 88px);padding:16px 14px}
:root[data-theme="alba"] .nav button{height:48px;border-radius:15px}
:root[data-theme="alba"] .nav button.active{background:linear-gradient(100deg,#ff7257,#f4a72e);box-shadow:0 12px 25px #042b4750}
:root[data-theme="alba"] .topbar{height:88px;padding:0 36px;border:0;background:#ffffffed;box-shadow:0 9px 28px #175b7d14}
:root[data-theme="alba"] .topbar:before{border:0;background:linear-gradient(145deg,#e1f5ff,#fff2d3);color:#f0724f}
:root[data-theme="alba"] .content{padding:34px 38px 60px}
:root[data-theme="alba"] .page-head{min-height:108px;margin:-34px -38px 28px;padding:22px 38px;border-radius:0 0 34px 0;background:radial-gradient(circle at 82% 20%,#ffd277 0,transparent 23%),linear-gradient(115deg,#e3f6ff,#fff 60%,#fff4e5)}
:root[data-theme="alba"] .card,:root[data-theme="alba"] .management-summary article{border-radius:20px;box-shadow:0 12px 30px #155b7d12}
:root[data-theme="alba"] .metrics-grid{gap:20px}:root[data-theme="alba"] .metric:nth-child(4n+1){border-top-color:#ff7655}:root[data-theme="alba"] .metric:nth-child(4n+2){border-top-color:#f5ae34}:root[data-theme="alba"] .metric:nth-child(4n+3){border-top-color:#28a8c7}:root[data-theme="alba"] .metric:nth-child(4n){border-top-color:#52b98c}

:root[data-theme="aqua"] body{background:#eefaf8}
:root[data-theme="aqua"] .sidebar{width:224px;border-right:1px solid #cce9e4;background:#f9fffe;color:#174b4c;box-shadow:10px 0 30px #057c7910}
:root[data-theme="aqua"] .shell{grid-template-columns:224px minmax(0,1fr)}
:root[data-theme="aqua"] .sidebar .brand{height:78px;border-bottom:1px solid #d8efeb;color:#006f72;background:linear-gradient(135deg,#fff,#e1f8f4)}
:root[data-theme="aqua"] .sidebar .brand span{color:#4f9995}
:root[data-theme="aqua"] .nav{height:calc(100vh - 78px);padding:22px 12px}
:root[data-theme="aqua"] .nav:before,:root[data-theme="aqua"] .module-section-toggle{color:#76a3a0}
:root[data-theme="aqua"] .nav button{height:43px;border-radius:9px;color:#315f60}
:root[data-theme="aqua"] .nav button:before{border-color:#70bbb4}
:root[data-theme="aqua"] .nav button:hover{background:#e6f6f3}
:root[data-theme="aqua"] .nav button.active{background:#d8f4ee;color:#006c6e;box-shadow:inset 4px 0 #0ab2a7}
:root[data-theme="aqua"] .nav button.active:before{border-color:#08a89f;background:#08a89f}
:root[data-theme="aqua"] .topbar{height:78px;padding:0 28px;border:0;border-bottom:1px solid #d6ebe7;background:#f9fffe}
:root[data-theme="aqua"] .topbar:before{border-radius:50%;border-color:#bfe4de;background:#e2f8f4;color:#008d8d}
:root[data-theme="aqua"] .content{padding:30px 34px 54px}
:root[data-theme="aqua"] .page-head{margin:-30px -34px 24px;padding:18px 34px;border:0;border-bottom:1px solid #d5ebe7;background:#f9fffe}
:root[data-theme="aqua"] .card,:root[data-theme="aqua"] .management-summary article,:root[data-theme="aqua"] .management-toolbar{border-radius:10px;box-shadow:none;border:1px solid #cfe8e4}
:root[data-theme="aqua"] .metric{border-left:5px solid #18afa6;align-items:flex-start;flex-direction:column}:root[data-theme="aqua"] .metric:nth-child(2n){border-left-color:#756fd1}
:root[data-theme="aqua"] .table-wrap{border-radius:10px;box-shadow:none}

:root[data-theme="aurora"] body{background:radial-gradient(circle at 78% 4%,#ffddea 0,transparent 24%),radial-gradient(circle at 34% 92%,#dcecff 0,transparent 32%),#f6f3ff}
:root[data-theme="aurora"] .shell{grid-template-columns:278px minmax(0,1fr);gap:18px;padding:18px}
:root[data-theme="aurora"] .sidebar{top:18px;bottom:18px;left:18px;width:260px;border:1px solid #ffffff55;border-radius:28px;background:linear-gradient(165deg,#505080,#6f67a8 58%,#a36f9e);box-shadow:0 25px 55px #4c477632;overflow:hidden}
:root[data-theme="aurora"] .sidebar .brand{height:92px;padding:29px 25px;border-bottom:1px solid #ffffff18}
:root[data-theme="aurora"] .nav{height:calc(100vh - 128px);padding:17px}
:root[data-theme="aurora"] .nav button{height:48px;border-radius:17px}
:root[data-theme="aurora"] .nav button.active{background:#fff;color:#56528f;box-shadow:0 13px 30px #38325e40}
:root[data-theme="aurora"] .nav button.active:before{border-color:#eb83ad;background:#f5b0ca}
:root[data-theme="aurora"] .main{overflow:hidden;border:1px solid #e5def1;border-radius:28px;background:#fbfaff;box-shadow:0 24px 60px #50497716}
:root[data-theme="aurora"] .topbar{height:82px;padding:0 30px;border:0;background:#ffffffba;backdrop-filter:blur(22px)}
:root[data-theme="aurora"] .topbar:before{border:0;border-radius:16px;background:linear-gradient(145deg,#e2dcff,#ffddea);color:#6b67cf}
:root[data-theme="aurora"] .content{padding:32px 34px 55px}
:root[data-theme="aurora"] .page-head{min-height:102px;margin:-32px -34px 28px;padding:20px 34px;border:0;background:linear-gradient(120deg,#f1edff,#fff 55%,#fff0f6)}
:root[data-theme="aurora"] .card,:root[data-theme="aurora"] .management-summary article,:root[data-theme="aurora"] .management-toolbar{border-radius:24px;border-color:#e6def1;box-shadow:0 16px 35px #554d7a12}
:root[data-theme="aurora"] .metric{min-height:132px;align-items:flex-start;padding:23px}:root[data-theme="aurora"] .metric:nth-child(odd){transform:translateY(8px)}
:root[data-theme="aurora"] .table-wrap{border-radius:22px;overflow:hidden}

:root[data-theme="citrus"] body{background:linear-gradient(110deg,#f4f8fb,#fbfdf5)}
:root[data-theme="citrus"] .sidebar{width:232px;background:linear-gradient(180deg,#0d3767,#154f87 62%,#0b315b);box-shadow:7px 0 0 #91c52b,14px 0 35px #123f7020}
:root[data-theme="citrus"] .shell{grid-template-columns:239px minmax(0,1fr)}
:root[data-theme="citrus"] .sidebar .brand{height:66px;padding:19px 20px}
:root[data-theme="citrus"] .nav{height:calc(100vh - 66px);padding:12px 10px}
:root[data-theme="citrus"] .nav button{height:42px;border-radius:7px;font-weight:650}
:root[data-theme="citrus"] .nav button.active{background:linear-gradient(90deg,#91c52b,#ef8b24);box-shadow:none}
:root[data-theme="citrus"] .topbar{height:66px;padding:0 26px;border-top:0;border-bottom:4px solid #91c52b;background:#fff}
:root[data-theme="citrus"] .topbar:before{border-radius:7px;border:2px solid #1766bd;background:#fff;color:#1766bd}
:root[data-theme="citrus"] .content{padding:24px 30px 48px}
:root[data-theme="citrus"] .page-head{min-height:84px;margin:-24px -30px 22px;padding:15px 30px;border:0;border-left:8px solid #ef8b24;background:linear-gradient(90deg,#fff,#f5f9ff)}
:root[data-theme="citrus"] .card,:root[data-theme="citrus"] .management-summary article,:root[data-theme="citrus"] .management-toolbar{border-radius:12px;border:0;border-left:4px solid #1767c3;box-shadow:0 9px 22px #153f6810}
:root[data-theme="citrus"] .metric:nth-child(3n+2){border-left-color:#91c52b}:root[data-theme="citrus"] .metric:nth-child(3n){border-left-color:#ef8b24}
:root[data-theme="citrus"] .primary{border-radius:7px;background:linear-gradient(135deg,#1767c3,#0f4c92)}
:root[data-theme="citrus"] .table-wrap{border-radius:9px}

@media(max-width:900px){:root[data-theme="alba"] .shell,:root[data-theme="aqua"] .shell,:root[data-theme="aurora"] .shell,:root[data-theme="citrus"] .shell{grid-template-columns:1fr;padding:0;gap:0}:root[data-theme="alba"] .sidebar,:root[data-theme="aqua"] .sidebar,:root[data-theme="aurora"] .sidebar,:root[data-theme="citrus"] .sidebar{left:0;top:0;bottom:auto;width:100%;height:auto;border-radius:0;box-shadow:none}:root[data-theme="aurora"] .main{border:0;border-radius:0}:root[data-theme="alba"] .content,:root[data-theme="aqua"] .content,:root[data-theme="aurora"] .content,:root[data-theme="citrus"] .content{padding:22px 18px 40px}}
.content {
  max-width: 1680px;
  padding: 28px 32px 52px;
}
.page-head {
  min-height: 78px;
  margin: -28px -32px 24px;
  padding: 16px 32px;
  background: transparent;
  border: 0;
}
.page-head h1,
.page-head h2 {
  font-size: 25px;
  font-weight: 720;
  letter-spacing: -0.4px;
}
.breadcrumbs {
  font-size: 11px;
  font-weight: 650;
  letter-spacing: 0.7px;
  text-transform: uppercase;
  color: #78909b;
}
.module-icon {
  width: 44px;
  height: 44px;
  border-radius: 13px;
  background: linear-gradient(145deg, #197b9e, #104c67);
  box-shadow: 0 8px 18px #125b7838;
  font-weight: 750;
}
.primary,
.secondary,
.danger {
  min-height: 38px;
  border-radius: 9px;
  padding: 9px 15px;
  text-transform: none;
  font-size: 12px;
  letter-spacing: 0;
  transition: 0.16s ease;
}
.primary {
  background: linear-gradient(135deg, #146b8c, #0f526e);
  box-shadow: 0 7px 16px #125b7830;
}
.primary:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 22px #125b7840;
}
.secondary {
  border-color: #d8e3e7;
  box-shadow: 0 1px 2px #16344209;
}
input,
select,
textarea {
  min-height: 42px;
  padding: 9px 12px;
  border: 1px solid #d9e4e8;
  border-radius: 9px;
  background: #f9fbfc;
  transition: 0.16s ease;
}
input:focus,
select:focus,
textarea:focus {
  background: #fff;
  border-color: #4f9fbb;
  box-shadow: 0 0 0 3px #3d9cbd20;
}
.toolbar {
  min-height: 64px;
  padding: 10px 14px;
  gap: 9px;
  border: 1px solid var(--line);
  border-bottom: 0;
  border-radius: 14px 14px 0 0;
  background: #ffffffed;
}
.toolbar input {
  border: 1px solid #dce5e8;
  border-radius: 10px;
  background: #f6f9fa;
}
.tabs {
  margin-bottom: 14px;
  padding: 0 5px;
  border: 0;
  background: transparent;
}
.tabs button {
  padding: 10px 14px;
  border-radius: 8px;
  border: 0;
}
.tabs button.active {
  background: #fff;
  color: var(--primary);
  box-shadow: var(--shadow-sm);
}
.table-wrap {
  border: 1px solid var(--line);
  border-radius: 0 0 14px 14px;
  box-shadow: var(--shadow-sm);
}
th {
  height: 46px;
  padding: 11px 14px;
  background: #f7fafb;
  color: #667b85;
  font-size: 10px;
  letter-spacing: 0.75px;
}
td {
  height: 54px;
  padding: 9px 14px;
  border-bottom-color: #edf2f4;
}
tbody tr {
  transition: 0.12s ease;
}
tbody tr:hover {
  background: #f1f8fa;
}
.record-link {
  font-weight: 650;
  color: #144e66;
}
.badge {
  padding: 5px 10px;
  border-radius: 999px;
  background: #edf3f5;
  font-size: 11px;
  font-weight: 650;
}
.pager {
  padding: 13px 16px;
  background: #fbfcfd;
}
.card {
  border: 1px solid #e1eaed;
  border-radius: 15px;
  box-shadow: var(--shadow-sm);
}
.metrics-grid {
  gap: 18px;
}
.metric {
  display: flex;
  align-items: center;
  gap: 15px;
  border: 0;
  padding: 19px 20px;
  min-height: 112px;
}
.metric-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 13px;
  background: #e6f2f6;
  color: var(--primary);
  font-size: 18px;
  font-weight: 800;
}
.metric-icon.accent {
  background: #fff1df;
  color: #c87514;
}
.metric span {
  display: block;
  color: #6e818b;
  font-size: 12px;
  font-weight: 650;
}
.metric strong {
  margin: 1px 0 -1px;
  font-size: 28px;
  font-weight: 760;
  color: #173745;
}
.metric small {
  color: #96a5ac;
  font-size: 10px;
}
.dashboard-head .status-pill,
.status-pill {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border: 1px solid #cfe4db;
  border-radius: 999px;
  background: #f1faf6;
  color: #327253;
  font-size: 11px;
  font-weight: 700;
}
.status-pill i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #39a56f;
  box-shadow: 0 0 0 4px #39a56f1c;
}
.dashboard-banner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 174px;
  margin-bottom: 20px;
  padding: 30px 34px;
  overflow: hidden;
  border-radius: 18px;
  background: linear-gradient(118deg, #103f54, #146b88 58%, #2387a5);
  box-shadow: 0 18px 38px #125b782d;
  color: #fff;
}
.dashboard-banner:after {
  content: "";
  position: absolute;
  right: 11%;
  top: -70px;
  width: 260px;
  height: 260px;
  border: 1px solid #ffffff24;
  border-radius: 50%;
  box-shadow:
    0 0 0 42px #ffffff08,
    0 0 0 88px #ffffff06;
}
.dashboard-banner h2 {
  position: relative;
  z-index: 1;
  margin: 7px 0 5px;
  font-size: 25px;
  letter-spacing: -0.5px;
}
.dashboard-banner p {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #cbe5ee;
}
.eyebrow {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.5px;
  color: #76c1da;
}
.banner-mark {
  position: relative;
  z-index: 1;
  display: grid;
  place-items: center;
  width: 74px;
  height: 74px;
  border: 1px solid #ffffff35;
  border-radius: 20px;
  background: #ffffff16;
  font-size: 23px;
  font-weight: 800;
  box-shadow: inset 0 1px #ffffff30;
}
.dashboard-section {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin: 27px 2px 12px;
}
.dashboard-section h3 {
  margin: 2px 0 0;
  font-size: 17px;
}
.activity-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: var(--shadow-sm);
}
.activity-strip > div {
  position: relative;
  padding: 17px 18px 17px 34px;
  border-right: 1px solid #edf1f3;
}
.activity-strip > div:last-child {
  border: 0;
}
.activity-dot {
  position: absolute;
  left: 17px;
  top: 22px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #40a57a;
}
.activity-strip strong,
.activity-strip small {
  display: block;
}
.activity-strip strong {
  text-transform: capitalize;
  font-size: 12px;
}
.activity-strip small {
  color: var(--muted);
  font-size: 10px;
}
.empty.compact {
  grid-column: 1/-1;
  padding: 24px;
}
.modal {
  background: #0a2835a6;
  backdrop-filter: blur(5px);
}
.modal-card {
  border: 1px solid #ffffff55;
  border-radius: 17px;
  box-shadow: var(--shadow-lg);
}
.modal-card > .page-head {
  margin: 0;
  padding: 20px 24px;
  background: #fbfcfd;
  border-bottom: 1px solid var(--line);
}
.record-block {
  border: 1px solid #e2e9ec !important;
  border-radius: 13px !important;
  overflow: hidden;
  box-shadow: 0 2px 8px #1634420a;
}
.record-block > header {
  background: linear-gradient(180deg, #fafcfd, #f6f9fa) !important;
}
.company-logo {
  border-color: #d9e5e9;
  border-radius: 11px;
  box-shadow: 0 2px 7px #14354115;
}
.logo-cell {
  width: 58px;
}
@media (max-width: 900px) {
  .shell {
    grid-template-columns: 72px minmax(0, 1fr);
  }
  .sidebar {
    width: 72px;
  }
  .sidebar .brand {
    font-size: 0;
    padding: 24px 15px;
  }
  .sidebar .brand:before {
    content: "MH";
    font-size: 18px;
  }
  .sidebar .brand span,
  .nav:before {
    display: none;
  }
  .nav {
    padding: 15px 9px;
  }
  .nav button {
    font-size: 0;
    padding: 0 20px;
  }
  .nav button:before {
    margin: 0;
  }
  .content {
    padding: 22px;
  }
  .page-head {
    margin: -22px -22px 18px;
    padding: 14px 22px;
  }
  .grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .activity-strip {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 560px) {
  .topbar {
    height: 62px;
  }
  .content {
    padding: 16px;
  }
  .page-head {
    margin: -16px -16px 14px;
    padding: 14px 16px;
  }
  .dashboard-banner {
    padding: 24px;
    min-height: 155px;
  }
  .banner-mark {
    display: none;
  }
  .dashboard-banner h2 {
    font-size: 21px;
  }
  .grid,
  .activity-strip {
    grid-template-columns: 1fr;
  }
  .toolbar {
    border-radius: 12px;
  }
  .table-wrap {
    border-radius: 12px;
  }
  .metric {
    min-height: 98px;
  }
}

/* Second pass: modules, records and operating surfaces */
.nav button[data-page="dashboard"]:before {
  content: "⌂";
}
.nav button[data-code="companies"]:before {
  content: "▦";
}
.nav button[data-code="contacts"]:before {
  content: "●";
}
.nav button[data-code="leads"]:before {
  content: "◆";
}
.nav button[data-page="campaigns"]:before {
  content: "◉";
}
.nav button[data-page="processes"]:before {
  content: "⌁";
}
.nav button[data-page="builder"]:before {
  content: "▤";
}
.nav button[data-page="audit"]:before {
  content: "✓";
}
.nav button[data-page="executions"]:before {
  content: "↗";
}
.nav .settings-nav > button:before {
  content: "⚙";
}
.nav-group.settings-nav {
  margin-top: 16px;
  padding-top: 10px;
  border-top: 1px solid #ffffff15;
}
.nav > .settings-nav {
  position: sticky;
  bottom: 0;
  z-index: 4;
  margin-bottom: 0;
  padding-bottom: 8px;
  background: color-mix(in srgb, var(--sidebar-end, #103747) 96%, transparent);
  box-shadow: 0 -12px 18px color-mix(in srgb, var(--sidebar-end, #103747) 82%, transparent);
  backdrop-filter: blur(12px);
}
.topbar .settings-shortcut {
  border-color: #a9c8d3;
  background: #eef7f9;
  color: #185a72;
}
.nav button:before {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  margin-right: 11px;
  border: 0 !important;
  border-radius: 7px !important;
  background: #ffffff0d !important;
  transform: none !important;
  color: #83b5c7;
  font-size: 14px !important;
  font-weight: 700;
}
.nav button.active:before {
  background: #ffffff1f !important;
  color: #fff;
}
.module-insight {
  display: flex;
  align-items: center;
  gap: 28px;
  min-height: 86px;
  margin: 0 0 14px;
  padding: 15px 20px;
  border: 1px solid #dce7ea;
  border-radius: 14px;
  background: linear-gradient(105deg, #fff, #f6fafb);
  box-shadow: var(--shadow-sm);
}
.module-insight > div:first-child {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-right: auto;
}
.insight-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: linear-gradient(145deg, #166d8d, #0e4b65);
  color: #fff;
  font-size: 19px;
  font-weight: 800;
  box-shadow: 0 8px 18px #125b7832;
}
.module-insight small,
.insight-stat span {
  display: block;
  color: #8799a1;
  font-size: 9px;
  font-weight: 750;
  letter-spacing: 1px;
}
.module-insight strong {
  display: block;
  margin-top: 2px;
  color: #173845;
  font-size: 20px;
}
.insight-stat {
  min-width: 112px;
  padding-left: 23px;
  border-left: 1px solid #e1e9ec;
}
.insight-stat b {
  display: block;
  margin-top: 4px;
  color: #355563;
  font-size: 12px;
}
.theme-leads .insight-icon {
  background: linear-gradient(145deg, #8154c7, #573293);
  box-shadow: 0 8px 18px #6740a832;
}
.theme-contacts .insight-icon {
  background: linear-gradient(145deg, #238d77, #176854);
  box-shadow: 0 8px 18px #23776132;
}
.module-insight + .toolbar {
  border-radius: 14px;
  margin-bottom: 10px;
  border-bottom: 1px solid var(--line);
  box-shadow: var(--shadow-sm);
}
.module-insight ~ .table-wrap {
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.module-insight ~ .table-wrap table {
  border-collapse: separate;
  border-spacing: 0 8px;
  padding: 0;
  overflow: visible;
}
.module-insight ~ .table-wrap thead th {
  position: static;
  height: 34px;
  padding: 5px 14px;
  border: 0;
  background: transparent;
  color: #7c8e96;
}
.module-insight ~ .table-wrap tbody td {
  height: 62px;
  border-top: 1px solid #e3eaed;
  border-bottom: 1px solid #e3eaed;
  background: #fff;
  box-shadow: 0 5px 15px #17384508;
}
.module-insight ~ .table-wrap tbody td:first-child {
  border-left: 1px solid #e3eaed;
  border-radius: 12px 0 0 12px;
}
.module-insight ~ .table-wrap tbody td:last-child {
  border-right: 1px solid #e3eaed;
  border-radius: 0 12px 12px 0;
}
.module-insight ~ .table-wrap tbody tr:hover td {
  border-color: #bcd6df;
  background: #f8fcfd;
  box-shadow: 0 8px 22px #17384512;
}
.module-insight ~ .table-wrap .pager {
  margin-top: 8px;
  border: 1px solid var(--line);
  border-radius: 12px;
  box-shadow: var(--shadow-sm);
}
.module-insight ~ .table-wrap .company-logo {
  width: 46px;
  height: 46px;
  border-radius: 12px;
}
.module-insight ~ .table-wrap .record-link {
  font-size: 13px;
}
.record-modal .modal-card {
  width: min(1180px, 97vw);
  background: #f3f7f8;
}
.record-modal .modal-card > .page-head {
  min-height: 92px;
  padding: 18px 26px;
  background: linear-gradient(115deg, #fff, #f3f9fb);
}
.record-modal .record-heading {
  font-size: 23px;
}
.record-modal .breadcrumbs {
  margin-bottom: 5px;
}
.record-modal .tabs {
  margin: 0;
  padding: 0 24px;
  background: #fff;
  border-top: 1px solid #e7edef;
  border-bottom: 1px solid #e1e9ec;
}
.record-modal .tabs button {
  border-radius: 0;
  padding: 14px 18px;
}
.record-modal .tabs button.active {
  background: transparent;
  border-bottom: 3px solid var(--primary);
  box-shadow: none;
}
.record-modal .record-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 16px;
  padding: 20px 22px 88px !important;
  background: linear-gradient(180deg, #eef4f6, #f7f9fa);
}
.record-modal .record-block {
  margin: 0 !important;
  border: 1px solid #dfe8eb !important;
  border-radius: 15px !important;
  box-shadow: 0 7px 20px #1738450b !important;
}
.record-modal .record-block > header {
  min-height: 68px;
  padding: 14px 17px;
  background: #fff !important;
  border-bottom: 1px solid #e8eef0;
}
.record-modal .record-block h3 {
  text-transform: none;
  color: #173e4e;
  font-size: 14px;
  font-weight: 750;
}
.record-modal .record-block header p {
  font-size: 10px;
}
.record-modal .record-block-fields {
  padding: 8px 17px 18px;
  gap: 0 18px;
}
.record-modal label {
  margin: 11px 0;
  color: #4b6672;
  font-size: 11px;
}
.record-modal input,
.record-modal select,
.record-modal textarea {
  background: #f7fafb;
  border-color: #dce6e9;
}
.record-modal .form-actions {
  grid-column: 1/-1;
  margin: 0 -22px -88px;
  padding: 14px 24px;
  border-top: 1px solid #dce6e9;
  background: #ffffffeb;
  backdrop-filter: blur(10px);
}
.record-modal .related-panel {
  min-height: 420px;
  padding: 22px;
  background: #f3f7f8;
}
.record-modal .related-head {
  border: 1px solid var(--line);
  border-radius: 13px 13px 0 0;
}
.record-companies .modal-card > .page-head {
  border-top: 4px solid #1b7898;
}
.record-leads .modal-card > .page-head {
  border-top: 4px solid #7549b4;
}
.record-contacts .modal-card > .page-head {
  border-top: 4px solid #25816e;
}
.layout-modules,
.layout-toolbar,
.layout-block,
.process-summary {
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: var(--shadow-sm);
}
.layout-modules {
  overflow: hidden;
}
.layout-modules button {
  border-left: 0;
  padding: 13px 15px;
}
.layout-modules button.active {
  border-left: 0;
  background: linear-gradient(90deg, #e7f3f7, #f3f9fb);
  font-weight: 700;
}
.layout-block {
  overflow: hidden;
  border-top: 0;
}
.layout-block > header {
  min-height: 65px;
  background: linear-gradient(180deg, #fbfdfd, #f5f9fa);
}
.layout-field {
  border-radius: 9px;
  background: #fafcfd;
  transition: 0.15s;
}
.layout-field:hover {
  transform: translateY(-1px);
  box-shadow: 0 5px 12px #17384510;
}
.process-summary {
  padding: 18px 20px;
}
.process-editor {
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #fff;
}
.process-palette > button {
  border-radius: 9px;
}
.workflow-node {
  border-radius: 12px;
  box-shadow: 0 8px 24px #1738451b;
}

/* Studio moduli: canvas amministrativo con trascinamento diretto. */
.builder-hero { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin:-4px -4px 18px; padding:28px 30px; border:1px solid #cfe1e7; border-radius:20px; background:radial-gradient(circle at 85% 10%,#d8eef5 0,transparent 34%),linear-gradient(135deg,#fafdfe,#edf6f8); box-shadow:0 12px 34px #17384510; }
.builder-hero h1 { margin:5px 0 7px; font-size:30px; color:#173845; }
.builder-hero p { max-width:720px; margin:0; color:#647b85; }
.builder-hero-actions { display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end; }
.automatic-code-info { margin:14px 0;padding:14px 16px;border:1px solid #cfe1e7;border-radius:12px;background:#f1f8fa;color:#315968; }
.automatic-code-info strong { display:block;margin-bottom:4px;color:#174f65; }
.automatic-code-info p { margin:0;font-size:12px;line-height:1.5; }
.generated-record-code { color:#28586a!important;background:#eef5f7!important;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:750;letter-spacing:.04em; }
.nav button[data-page="documents"]:before { content:"▤";border:0!important;transform:none!important;color:#91bdcb;font-size:17px; }
.documents-hero { display:flex;justify-content:space-between;align-items:center;gap:24px;margin:-4px -4px 18px;padding:25px 28px;border:1px solid #cfe1e7;border-radius:20px;background:radial-gradient(circle at 88% 0,#d7edf4 0,transparent 34%),linear-gradient(135deg,#fbfdfe,#eef7f9);box-shadow:0 12px 34px #17384510; }
.documents-title,.documents-hero-actions,.document-identity,.document-actions,.linked-documents-head { display:flex;align-items:center;gap:12px; }
.documents-mark { display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:linear-gradient(145deg,#217b9b,#14566f);color:#fff;font-size:22px;font-weight:850;box-shadow:0 10px 22px #14566f38; }
.documents-title h1 { margin:4px 0 4px;color:#173845;font-size:27px; }
.documents-title p { margin:0;color:#647b85; }
.documents-hero-actions { flex-wrap:wrap;justify-content:flex-end; }
.document-summary { display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px;margin-bottom:12px; }
.document-summary article { display:grid;gap:3px;padding:16px;border:1px solid #dce7eb;border-radius:14px;background:#fff;box-shadow:0 4px 14px #1738450a; }
.document-summary article span,.document-summary article small { color:#6b818a;font-size:11px; }
.document-summary article strong { color:#193f4e;font-size:25px; }
.document-summary article.attention { border-color:#edd8a4;background:#fffaf0; }
.document-system-state { display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px; }
.document-system-state span { padding:6px 10px;border:1px solid #d7e5ea;border-radius:999px;background:#f6fafb;color:#52707c;font-size:10px;font-weight:750; }
.document-view-tabs { display:flex;gap:5px;padding:6px;border:1px solid #dce7eb;border-radius:13px 13px 0 0;background:#f4f8fa;overflow:auto; }
.document-view-tabs button { border:0;border-radius:8px;background:transparent;color:#5c737d;padding:9px 13px;white-space:nowrap;cursor:pointer;font-weight:650; }
.document-view-tabs button.active { background:#fff;color:#185d76;box-shadow:0 3px 10px #17384512; }
.document-toolbar { display:grid;grid-template-columns:minmax(260px,1fr) 210px 180px auto;gap:9px;padding:12px;border:1px solid #dce7eb;border-top:0;background:#fff; }
.document-table { border-radius:0 0 14px 14px!important; }
.document-table table { min-width:1450px; }
.document-table td small,.document-identity small { display:block;margin-top:3px;color:var(--muted); }
.document-format { display:grid;place-items:center;flex:0 0 39px;height:39px;border-radius:10px;background:#e7f2f6;color:#17627d;font-size:10px;font-weight:900;letter-spacing:.03em; }
.document-actions { gap:5px;flex-wrap:wrap; }
.document-actions .secondary,.document-actions .danger { padding:6px 8px;font-size:10px;text-decoration:none; }
.document-link-chip { display:inline-block;margin:2px;padding:4px 7px;border-radius:999px;background:#edf5f7;color:#356273;font-size:10px; }
.folder-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px;padding:16px 0; }
.folder-card { display:grid;grid-template-columns:38px 1fr;gap:3px 10px;text-align:left;padding:16px;border:1px solid #dce7eb;border-radius:14px;background:#fff;color:#234b5a;cursor:pointer; }
.folder-card>span { grid-row:1/3;display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#fff3d8;color:#a66b11;font-size:19px; }
.folder-card small { color:var(--muted); }
.document-upload-form { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
.document-upload-form .full { grid-column:1/-1; }
.document-drop { display:grid;place-items:center;text-align:center;gap:7px;padding:25px;border:2px dashed #9fc2cf;border-radius:14px;background:#f4fafc;color:#28586a; }
.document-drop.drag-active { border-color:var(--primary);background:rgba(15,118,110,.08);transform:translateY(-1px); }
.document-drop.has-selected-file,.document-drop:has(input.file-selected),label.has-selected-file { border-color:#63b98a!important;background:#edf9f2!important;box-shadow:0 0 0 3px #58b58118; }
input[type="file"].file-selected { border-color:#63b98a!important;background:#e5f7ed!important;color:#165f3b!important;font-weight:750; }
.library-linked-resources{margin:14px 0;padding:14px;border:1px solid #d6e6eb;border-radius:16px;background:#f8fbfc}.library-resource-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.library-resource-head h2{margin:3px 0}.library-resource-head p{margin:0;color:var(--muted);font-size:12px}.library-linked-resources>h3{margin:14px 0 7px;color:#28586a;font-size:13px}.compact-folder-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:7px;padding:0}.compact-folder-grid .folder-card{grid-template-columns:30px 1fr;padding:8px 10px;border-radius:10px}.compact-folder-grid .folder-card>span{width:30px;height:30px;border-radius:8px;font-size:14px}.library-drive-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:8px}.library-drive-grid>article{grid-template-columns:38px minmax(0,1fr);gap:9px;padding:10px;border-radius:12px}.library-drive-grid .drive-folder-icon{width:38px;height:38px;border-radius:10px;font-size:17px}.library-drive-grid h3{margin:3px 0}.library-drive-grid p{min-height:0;margin:0;font-size:11px}.library-drive-grid .drive-folder-actions{grid-column:2;margin:0}.folder-grid{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:8px}.folder-card{grid-template-columns:31px 1fr;padding:9px 11px;border-radius:10px}.folder-card>span{width:31px;height:31px;border-radius:8px;font-size:15px}
.library-folder-resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.library-folder-resource{min-width:0;padding:10px;border:1px solid #dce9ed;border-radius:13px;background:#fff}.library-folder-resource>.folder-card{width:100%;margin-bottom:9px}.library-folder-resource>.library-drive-tree{padding-left:10px;border-left:3px solid #d9edf2}.library-folder-resource>.library-drive-tree>.empty{display:block;padding:8px;color:var(--muted);font-size:11px}
.template-studio-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px;border:1px solid #d6e5ea;border-radius:22px;background:linear-gradient(135deg,#f7fcfd,#eef7fa);box-shadow:var(--shadow-sm)}
.template-studio-hero h1{margin:5px 0 7px}.template-actions{display:flex;flex-wrap:wrap;gap:9px}.template-flags{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.template-flags span{padding:7px 10px;border-radius:99px;background:#fff;border:1px solid var(--line);font-size:11px;text-transform:capitalize}.template-flags .enabled{color:#18724d;border-color:#b9e1ce}.template-flags .disabled{color:#9b4f4f;border-color:#edcccc}
.template-library-head{display:flex;align-items:end;justify-content:space-between;margin:24px 0 12px}.template-library-head h2{margin:0}.template-library-head p{margin:3px 0;color:var(--muted)}.template-library-head input{max-width:390px}.template-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.template-card{display:grid;grid-template-columns:82px minmax(0,1fr);gap:16px;padding:18px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:var(--shadow-sm)}.template-preview-mark{display:grid;place-items:center;align-content:center;min-height:108px;border-radius:12px;background:linear-gradient(160deg,#dff1f5,#f1eafb);color:var(--primary)}.template-preview-mark span{font-weight:800}.template-preview-mark small{margin-top:5px}.template-card-copy h3{margin:8px 0 4px}.template-card-copy p{margin:0 0 10px;color:var(--muted)}.template-card-copy dl{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin:0}.template-card-copy dl div{display:flex;justify-content:space-between;gap:6px;font-size:11px}.template-card-copy dt{color:var(--muted)}.template-card-copy dd{margin:0;font-weight:700}.template-card-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:7px;padding-top:12px;border-top:1px solid var(--line)}
.template-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.template-form .full{grid-column:1/-1}.template-wizard-steps{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin:12px 0 20px}.template-wizard-steps span{display:grid;gap:3px;padding:8px;border-radius:9px;background:#f5f8f9;color:var(--muted);font-size:9px}.template-wizard-steps b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#dfe9ec}.template-wizard-steps span.active{background:var(--primary-soft);color:var(--primary)}.template-security{display:grid;gap:5px;padding:13px;border:1px solid #cde1e7;border-radius:12px;background:#f4fafc}.template-security span{color:var(--muted);font-size:12px}.import-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.import-result-grid section{padding:16px;border:1px solid var(--line);border-radius:14px}.field-suggestion{display:flex;justify-content:space-between;gap:12px;padding:8px;border-bottom:1px solid var(--line)}.template-comparison{margin:14px 0;height:420px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#e8eef0}.template-comparison iframe{width:100%;height:100%;border:0;background:#fff}.ai-template-status{display:grid;gap:4px;margin-bottom:14px;padding:13px;border-radius:12px}.ai-template-status.configured{background:#edf9f3;color:#176c49}.ai-template-status.blocked{background:#fff5e9;color:#935c20}.consent{display:flex!important;align-items:flex-start;gap:9px}.consent input{width:auto;min-height:auto;margin-top:3px}
@media(max-width:900px){.template-studio-hero,.template-library-head{align-items:stretch;flex-direction:column}.template-library{grid-template-columns:1fr}.template-wizard-steps{grid-template-columns:repeat(4,1fr)}}@media(max-width:650px){.template-form,.import-result-grid{grid-template-columns:1fr}.template-form .full{grid-column:auto}.template-wizard-steps{grid-template-columns:repeat(2,1fr)}}
.relation-center { padding:20px; }
.relation-center .related-head { display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px; }
.relation-search { display:flex;gap:8px;min-width:min(420px,100%); }
.relation-search input { min-width:240px; }
.relation-counters { display:flex;gap:10px;overflow-x:auto;padding:2px 2px 14px; }
.relation-counters button { display:grid;min-width:118px;padding:12px 15px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--text);text-align:left;cursor:pointer; }
.relation-counters button.active { border-color:var(--primary);background:var(--primary-soft); }
.relation-counters strong { font-size:22px;color:var(--primary); }
.relation-counters span { color:var(--muted);font-size:12px; }
.relation-pagination { display:flex;align-items:center;justify-content:center;gap:14px;margin-top:14px; }
@media(max-width:760px){.relation-center .related-head{align-items:stretch;flex-direction:column}.relation-search{min-width:0}.relation-search input{min-width:0;flex:1}}
.document-drop input { max-width:480px;background:#fff; }
.document-security-note { display:flex;gap:8px;padding:12px 14px;border:1px solid #ecd69e;border-radius:11px;background:#fff9e9;color:#725717;font-size:11px; }
.document-search-results,.version-timeline,.linked-document-list { display:grid;gap:9px; }
.document-search-results article,.version-timeline article,.linked-document-list article { display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #dce7eb;border-radius:12px;background:#fff; }
.document-search-results article>div,.version-timeline article>div:nth-child(2),.linked-document-list article>div { flex:1;display:grid;gap:3px; }
.version-timeline article>span { display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#eaf4f7;color:#17627d;font-weight:850; }
.version-timeline code { max-width:600px;overflow:hidden;text-overflow:ellipsis;color:#6c818a;font-size:9px; }
.linked-documents-panel { padding:18px; }
.linked-documents-head { justify-content:space-between;margin-bottom:14px; }
.linked-documents-head h3,.linked-documents-head p { margin:0; }
.linked-documents-head p { color:var(--muted);font-size:12px; }
.document-panel-loading { padding:30px;text-align:center;color:var(--muted); }
@media(max-width:1100px){.document-summary{grid-template-columns:repeat(3,1fr)}.document-toolbar{grid-template-columns:1fr 1fr}.documents-hero{align-items:flex-start}.documents-hero-actions{max-width:310px}}
@media(max-width:700px){.documents-hero{display:grid;padding:20px}.documents-hero-actions{justify-content:flex-start;max-width:none}.document-summary{grid-template-columns:repeat(2,1fr)}.document-toolbar{grid-template-columns:1fr}.document-upload-form{grid-template-columns:1fr}.document-upload-form .full{grid-column:auto}.linked-documents-head{align-items:flex-start;display:grid}.linked-document-list article{align-items:flex-start;flex-wrap:wrap}}
.builder-summary { display:grid; grid-template-columns:1.4fr .7fr .9fr 1.1fr; gap:12px; margin-bottom:18px; }
.builder-summary > div { display:grid; gap:4px; min-height:72px; padding:14px 17px; border:1px solid var(--line); border-radius:14px; background:#fff; box-shadow:var(--shadow-sm); }
.builder-summary span { color:var(--muted); font-size:12px; }
.builder-summary strong { color:#173845; font-size:18px; }
.builder-save-state { align-content:center; grid-template-columns:12px 1fr !important; }
.builder-save-state i { width:9px; height:9px; border-radius:50%; background:#28a174; box-shadow:0 0 0 4px #dff4ec; }
.builder-save-state.saving i { background:#e8a42e; box-shadow:0 0 0 4px #fff1d7; animation:pulse 1s infinite; }
.builder-save-state.error i { background:var(--danger); box-shadow:0 0 0 4px #fde5e5; }
.layout-editor { grid-template-columns:270px minmax(0,1fr); gap:20px; }
.layout-modules { position:sticky; top:16px; max-height:calc(100vh - 40px); overflow:hidden; background:#f9fcfd; }
.layout-modules-head { padding:18px; border-bottom:1px solid var(--line); background:#fff; }
.layout-modules-head h3 { padding:0; margin:3px 0 13px; border:0; font-size:20px; text-transform:none; color:#173845; }
.layout-modules-head input { min-height:40px; border-radius:10px; background:#f6f9fa; }
.layout-module-list { max-height:calc(100vh - 160px); overflow:auto; padding:8px; }
.layout-modules .layout-module-list button { margin:3px 0; border-radius:10px; gap:10px; }
.layout-modules .layout-module-list button > span { display:grid; gap:2px; }
.layout-modules .layout-module-list button small { font-size:11px; font-weight:400; }
.layout-modules .layout-module-list button b { display:grid; place-items:center; min-width:28px; height:28px; border-radius:9px; background:#edf3f5; color:#607983; font-size:12px; }
.layout-modules .layout-module-list button.active b { background:#fff; color:var(--primary); }
.layout-toolbar { flex-wrap:wrap; padding:18px 20px; border-radius:16px; background:linear-gradient(135deg,#153f4f,#1a596c); color:#fff; }
.layout-toolbar > div:first-child { gap:2px; }
.layout-toolbar > div:first-child strong { font-size:21px; }
.layout-toolbar > div:first-child span { color:#bdd4dc; }
.layout-toolbar .eyebrow { color:#69c3de !important; }
.layout-toolbar-actions { display:flex; flex-wrap:wrap; gap:7px; margin-left:auto; }
.layout-toolbar-actions .secondary { border-color:#ffffff3d; background:#ffffff14; color:#fff; }
.layout-drag-guide { display:flex; align-items:center; gap:12px; padding:13px 16px; border:1px dashed #9cc6d3; border-radius:13px; background:#f2fafc; color:#315d6c; }
.layout-drag-guide > div { display:grid; gap:2px; }
.layout-drag-guide small { color:#708892; }
.drag-guide-icon,.field-drag-handle { font-weight:800; letter-spacing:-3px; color:#6fa5b5; }
.layout-block { border:1px solid #d6e4e8; border-radius:16px; background:#fff; }
.layout-block > header { align-items:center; padding:16px 18px; background:linear-gradient(180deg,#fff,#f6fafb); }
.layout-block-title { display:flex !important; align-items:center; gap:12px; }
.layout-block-title > span { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; background:#e7f3f7; color:#28758d; font-weight:800; font-size:12px; }
.layout-block-title > div { display:grid; }
.layout-block-meta { padding:5px 9px; border-radius:20px; background:#edf3f5; }
.layout-fields { min-height:92px; gap:10px; padding:16px; transition:background .15s,box-shadow .15s; }
.layout-fields.columns-1 { grid-template-columns:1fr; }
.layout-fields.drag-over { background:#eef9fc; box-shadow:inset 0 0 0 2px #65afc4; }
.layout-field { cursor:grab; min-height:62px; gap:10px; padding:10px 12px; border:1px solid #dce7ea; border-radius:11px; background:#fff; box-shadow:0 2px 7px #1738450a; }
.layout-field:active { cursor:grabbing; }
.layout-field.dragging { opacity:.4; border:2px dashed #2b89a4; box-shadow:none; }
.layout-field-copy { display:grid; flex:1; gap:2px; }
.layout-field-copy strong { color:#284955; }
.field-edit-icon { display:grid; place-items:center; width:28px; height:28px; border-radius:8px; background:#f1f5f6; color:#708892; }
.layout-field:hover .field-edit-icon { background:#dceff5; color:var(--primary); }
.layout-empty { grid-column:1/-1; margin:0; padding:20px; border:1px dashed #c7d8dd; border-radius:10px; text-align:center; color:#7b9199; pointer-events:none; }
@media (max-width:1000px) { .builder-summary { grid-template-columns:repeat(2,1fr); } .layout-editor { grid-template-columns:1fr; } .layout-modules { position:static; max-height:none; } .layout-module-list { max-height:260px; } }
.process-inspector,
.process-palette {
  background: #fbfcfd;
}
@media (max-width: 1050px) {
  .record-modal .record-layout {
    grid-template-columns: 1fr;
  }
  .module-insight {
    gap: 15px;
  }
  .insight-stat {
    display: none;
  }
}
@media (max-width: 700px) {
  .module-insight {
    min-height: 72px;
    padding: 11px 14px;
  }
  .insight-icon {
    width: 40px;
    height: 40px;
  }
  .module-insight strong {
    font-size: 17px;
  }
  .record-modal .record-layout {
    padding: 14px 12px 80px !important;
  }
  .record-modal .form-actions {
    margin: 0 -12px -80px;
  }
  .module-insight ~ .table-wrap {
    overflow: auto;
  }
  .record-modal .record-block-fields.columns-2 {
    grid-template-columns: 1fr;
  }
}

/* Liste, segmenti e pubblici campagna */

/* Calendario CRM ispirato alla struttura operativa VTENEXT */
.calendar-page-head {
  margin-bottom: 16px;
}
.calendar-page-head h1 {
  margin-bottom: 2px;
}
.calendar-page-head p {
  margin: 0;
  color: var(--muted);
}
.calendar-shell {
  display: grid;
  grid-template-columns: 218px minmax(0, 1fr);
  min-height: 660px;
  overflow: hidden;
  border: 1px solid #dbe4e7;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 30px #1738450d;
}
.calendar-sidebar {
  padding: 18px 15px;
  border-right: 1px solid #e1e8eb;
  background: #f8fafb;
}
.calendar-today {
  width: 100%;
  padding: 10px;
  border: 1px solid #b8ced6;
  border-radius: 9px;
  background: #fff;
  color: var(--primary);
  font-weight: 750;
}
.mini-date {
  display: grid;
  place-items: center;
  margin: 16px 0 22px;
  padding: 17px;
  border-radius: 12px;
  background: linear-gradient(145deg, #16556f, #103f53);
  color: #fff;
}
.mini-date span {
  text-transform: capitalize;
  font-size: 11px;
  opacity: 0.8;
}
.mini-date strong {
  font-size: 35px;
  line-height: 1.1;
}
.mini-date small {
  text-transform: capitalize;
  opacity: 0.85;
}
.calendar-sidebar section {
  margin-top: 21px;
}
.calendar-sidebar h3 {
  margin: 0 0 9px;
  color: #6e8189;
  font-size: 10px;
  letter-spacing: 1px;
  text-transform: uppercase;
}
.calendar-sidebar label {
  display: flex;
  grid-template-columns: none;
  align-items: center;
  gap: 8px;
  margin: 7px 0;
  color: #435b66;
  font-size: 11px;
  font-weight: 600;
}
.calendar-sidebar input {
  width: 14px;
  min-height: 14px;
  margin: 0;
}
.calendar-sidebar label i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #4b93aa;
}
.calendar-workspace {
  min-width: 0;
  background: #fff;
}
.calendar-commandbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 66px;
  padding: 10px 16px;
  border-bottom: 1px solid #e1e8eb;
}
.calendar-nav {
  display: flex;
  align-items: center;
  gap: 7px;
}
.calendar-nav button {
  width: 32px;
  height: 32px;
  border: 1px solid #d4dfe3;
  border-radius: 8px;
  background: #fff;
  color: #42616e;
  font-size: 20px;
}
.calendar-nav h2 {
  min-width: 235px;
  margin: 0 0 0 8px;
  color: #244551;
  font-size: 17px;
  text-transform: capitalize;
}
.calendar-commandbar .calendar-tabs {
  margin: 0;
  padding: 3px;
  border: 1px solid #dbe4e7;
  border-radius: 9px;
  background: #f5f8f9;
}
.calendar-commandbar .calendar-tabs button {
  padding: 7px 11px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #607780;
  font-size: 11px;
}
.calendar-commandbar .calendar-tabs button.active {
  background: #fff;
  color: var(--primary);
  box-shadow: 0 2px 7px #17384517;
}
.calendar-weekdays {
  display: grid;
  grid-template-columns: repeat(7, minmax(90px, 1fr));
  padding-left: 0;
  border-bottom: 1px solid #dfe7ea;
  background: #f7f9fa;
}
.calendar-weekdays.day,
.calendar-weekdays.agenda {
  display: none;
}
.calendar-weekdays span {
  padding: 8px;
  border-right: 1px solid #e5ebed;
  color: #73858d;
  text-align: center;
  font-size: 10px;
  font-weight: 750;
  text-transform: uppercase;
}
.calendar-shell .calendar-grid {
  gap: 0;
  background: #e2e9ec;
}
.calendar-shell .calendar-grid.month,
.calendar-shell .calendar-grid.week {
  grid-template-columns: repeat(7, minmax(90px, 1fr));
}
.calendar-shell .calendar-grid.day {
  grid-template-columns: 1fr;
}
.calendar-shell .calendar-day {
  min-height: 105px;
  padding: 7px;
  border: 0;
  background: #fff;
}
.calendar-shell .calendar-day {
  cursor: pointer;
  transition:
    background 0.14s ease,
    box-shadow 0.14s ease;
}
.calendar-shell .calendar-day:hover {
  position: relative;
  z-index: 1;
  background: #f6fbfc;
  box-shadow: inset 0 0 0 1px #a9ced9;
}
.calendar-shell .calendar-grid.week .calendar-day {
  min-height: 570px;
}
.calendar-shell .calendar-grid.day .calendar-day {
  min-height: 570px;
}
.calendar-shell .calendar-day.outside {
  background: #fafbfb;
}
.calendar-shell .calendar-day.outside header,
.calendar-shell .calendar-day.outside .calendar-event {
  opacity: 0.5;
}
.calendar-shell .calendar-day header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 0 6px;
  color: #84939a;
  text-transform: capitalize;
}
.calendar-shell .calendar-day header span {
  font-size: 10px;
}
.calendar-shell .calendar-day header b {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  font-size: 11px;
}
.calendar-shell .calendar-day header em {
  display: grid;
  place-items: center;
  width: 23px;
  height: 23px;
  margin-left: auto;
  border-radius: 6px;
  color: var(--primary);
  font-size: 15px;
  font-style: normal;
  opacity: 0;
}
.calendar-shell .calendar-day:hover header em {
  background: #e3f1f5;
  opacity: 1;
}
.calendar-shell .calendar-day header b + em {
  margin-left: 3px;
}
.calendar-shell .calendar-day.today header b {
  background: var(--primary);
  color: #fff;
}
.calendar-day-events {
  display: grid;
  gap: 4px;
}
.calendar-shell .calendar-event {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 5px;
  width: 100%;
  margin: 0;
  padding: 5px 7px;
  overflow: hidden;
  border: 0;
  border-left: 3px solid #4b93aa;
  border-radius: 5px;
  background: #eaf4f7;
  color: #28566a;
  text-align: left;
  font-size: 10px;
}
.calendar-event time {
  font-weight: 750;
}
.calendar-event span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.calendar-event.type-call,
.calendar-event.type-callback {
  border-color: #d58434;
  background: #fff3e5;
  color: #85521f;
}
.calendar-event.type-meeting,
.calendar-event.type-appointment {
  border-color: #7652ad;
  background: #f1ebfa;
  color: #583b83;
}
.calendar-event.type-visit {
  border-color: #29836d;
  background: #e7f5f1;
  color: #236854;
}
.calendar-event.type-deadline {
  border-color: #c44d52;
  background: #fdecee;
  color: #8e3439;
}
.calendar-event.type-task {
  border-color: #4b7fba;
  background: #eaf1fa;
  color: #345f91;
}
.calendar-sidebar i.type-call,
.calendar-sidebar i.type-callback {
  background: #d58434;
}
.calendar-sidebar i.type-meeting,
.calendar-sidebar i.type-appointment {
  background: #7652ad;
}
.calendar-sidebar i.type-visit {
  background: #29836d;
}
.calendar-sidebar i.type-deadline {
  background: #c44d52;
}
.calendar-sidebar i.type-task {
  background: #4b7fba;
}
.calendar-agenda {
  padding: 8px 18px 20px;
}
.calendar-agenda .calendar-row {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr) 24px;
  width: 100%;
  align-items: center;
  margin: 0;
  padding: 11px 4px;
  border: 0;
  border-bottom: 1px solid #e3e9eb;
  background: transparent;
  color: inherit;
  text-align: left;
}
.calendar-agenda .calendar-row > time {
  display: grid;
  grid-template-columns: auto auto;
  gap: 0 5px;
  color: var(--primary);
}
.calendar-agenda .calendar-row > time b {
  font-size: 19px;
}
.calendar-agenda .calendar-row > time span {
  align-self: center;
  text-transform: uppercase;
  font-size: 9px;
}
.calendar-agenda .calendar-row > time small {
  grid-column: 1 / -1;
  color: #788b93;
}
.agenda-arrow {
  color: #8a9aa1;
  font-size: 20px;
}
.event-summary {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  padding: 22px;
}
.event-summary > div {
  padding: 14px;
  border: 1px solid #e0e7ea;
  border-radius: 10px;
  background: #f8fafb;
}
.event-summary span,
.event-summary strong {
  display: block;
}
.event-summary span {
  margin-bottom: 4px;
  color: var(--muted);
  font-size: 10px;
  text-transform: uppercase;
}
.event-form {
  padding: 4px 22px 22px;
}
.event-dates {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}
@media (max-width: 900px) {
  .calendar-shell {
    grid-template-columns: 1fr;
  }
  .calendar-sidebar {
    display: none;
  }
  .calendar-commandbar {
    align-items: flex-start;
    gap: 10px;
  }
  .calendar-nav h2 {
    min-width: 0;
    font-size: 14px;
  }
  .calendar-shell .calendar-grid.month,
  .calendar-shell .calendar-grid.week,
  .calendar-weekdays {
    min-width: 700px;
  }
  .calendar-workspace {
    overflow: auto;
  }
}
@media (max-width: 600px) {
  .calendar-commandbar {
    display: grid;
  }
  .calendar-commandbar .calendar-tabs {
    width: 100%;
  }
  .event-summary {
    grid-template-columns: 1fr;
  }
}

.nav-group {
  margin: 7px 0 12px;
}
.nav-group > button {
  margin-bottom: 2px;
}
.nav-group > button:first-child:after {
  content: "›";
  margin-left: auto;
  color: #7fa2b0;
  font-size: 18px;
  transition:
    transform 0.18s ease,
    color 0.18s ease;
}
.nav-group.open > button:first-child:after {
  transform: rotate(90deg);
  color: #d8edf4;
}
.subnav {
  display: none;
  gap: 2px;
  margin: 0 5px 7px 39px;
  padding-left: 10px;
  border-left: 1px solid #ffffff18;
}
.nav-group.open > .subnav {
  display: grid;
  animation: subnav-open 0.16s ease-out;
}
@keyframes subnav-open {
  from {
    opacity: 0;
    transform: translateY(-4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.subnav button {
  height: 30px !important;
  margin: 0 !important;
  padding: 0 8px !important;
  border-radius: 6px !important;
  color: #9eb6c0 !important;
  font-size: 11px !important;
}
.subnav button:before {
  display: none !important;
}
.subnav button:hover {
  color: #fff !important;
  background: #ffffff0b !important;
}

/* Layout ADV condiviso: sidebar espandibile e icona Aziende VTENEXT */
.sidebar .brand { position: static; }
.sidebar-toggle { position:absolute;top:auto;bottom:18px;right:12px;display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid #ffffff18;border-radius:8px;color:#b9d2dc;background:#ffffff0b;font-size:20px;cursor:pointer; }
.sidebar-toggle:hover { color:#fff;background:#ffffff15; }
.nav button[data-code="companies"]:before { content:"";background-color:#8fc2d4!important;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 21V3h10v4h8v14H3zm3-3h2v-2H6v2zm0-4h2v-2H6v2zm0-4h2V8H6v2zm0-4h2V5H6v1zm4 12h2v-2h-2v2zm0-4h2v-2h-2v2zm0-4h2V8h-2v2zm0-4h2V5h-2v1zm4 12h2v-2h-2v2zm0-4h2v-2h-2v2zm0-4h2V9h-2v1zm4 8h1v-2h-1v2zm0-4h1v-2h-1v2zm0-4h1V9h-1v1z'/%3E%3C/svg%3E") center/18px 18px no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 21V3h10v4h8v14H3zm3-3h2v-2H6v2zm0-4h2v-2H6v2zm0-4h2V8H6v2zm0-4h2V5H6v1zm4 12h2v-2h-2v2zm0-4h2v-2h-2v2zm0-4h2V8h-2v2zm0-4h2V5h-2v1zm4 12h2v-2h-2v2zm0-4h2v-2h-2v2zm0-4h2V9h-2v1zm4 8h1v-2h-1v2zm0-4h1v-2h-1v2zm0-4h1V9h-1v1z'/%3E%3C/svg%3E") center/18px 18px no-repeat; }
body.sidebar-collapsed .shell { grid-template-columns:72px minmax(0,1fr); }
body.sidebar-collapsed .sidebar { width:72px; }
body.sidebar-collapsed .sidebar .brand { padding:24px 14px;font-size:0; }
body.sidebar-collapsed .sidebar .brand:before { content:"MH";font-size:18px; }
body.sidebar-collapsed .sidebar .brand span,body.sidebar-collapsed .nav:before,body.sidebar-collapsed .subnav,body.sidebar-collapsed .nav-group>button:after { display:none!important; }
body.sidebar-collapsed .sidebar-toggle { top:auto;bottom:18px;right:24px;z-index:2;width:24px;height:24px;border-color:#d8e3e7;color:#185a72;background:#fff;font-size:16px; }
body.sidebar-collapsed .nav { padding:15px 9px; }
body.sidebar-collapsed .nav button { justify-content:center;padding:0;font-size:0; }
body.sidebar-collapsed .nav button:before { margin:0; }
body.sidebar-collapsed .module-section { margin:0; }
body.sidebar-collapsed .module-section-toggle { display:none; }
body.sidebar-collapsed .module-section-items>.nav-group { margin-left:0; }
body.sidebar-collapsed .nav-group { position:relative;margin:5px 0; }
body.sidebar-collapsed .nav-group.compact-open>.subnav {
  position:fixed;
  z-index:80;
  top:var(--compact-menu-top,90px);
  left:82px;
  display:grid!important;
  width:270px;
  max-height:min(390px,calc(100vh - 32px));
  gap:5px;
  margin:0;
  padding:58px 12px 12px;
  overflow:auto;
  border:1px solid #d8e5ea;
  border-radius:16px;
  background:#fff;
  box-shadow:0 20px 55px #102f3d2b,0 4px 14px #102f3d14;
  animation:compact-menu-open .16s ease-out;
}
body.sidebar-collapsed .nav-group.compact-open>.subnav:before {
  content:attr(data-title);
}
body.sidebar-collapsed .nav-group.compact-open:before {
  content:attr(data-compact-title);
  position:fixed;
  z-index:81;
  top:calc(var(--compact-menu-top,90px) + 1px);
  left:83px;
  width:244px;
  padding:16px 13px 13px;
  border-bottom:1px solid #e5edf0;
  color:#183e4d;
  font-size:14px;
  font-weight:800;
  letter-spacing:-.01em;
  pointer-events:none;
}
body.sidebar-collapsed .nav-group.compact-open:after {
  content:"";
  position:fixed;
  z-index:82;
  top:calc(var(--compact-menu-top,90px) + 22px);
  left:74px;
  width:16px;
  height:16px;
  border-left:1px solid #d8e5ea;
  border-bottom:1px solid #d8e5ea;
  background:#fff;
  transform:rotate(45deg);
}
body.sidebar-collapsed .nav-group.compact-open>.subnav button {
  justify-content:flex-start;
  height:40px!important;
  padding:0 12px!important;
  border-radius:9px!important;
  color:#486673!important;
  font-size:12px!important;
  font-weight:650;
  white-space:normal;
}
body.sidebar-collapsed .nav-group.compact-open>.subnav button:before {
  content:""!important;
  display:block!important;
  width:6px!important;
  height:6px!important;
  margin:0 11px 0 1px!important;
  border:0!important;
  border-radius:50%!important;
  background:#80a9b8!important;
  transform:none!important;
}
body.sidebar-collapsed .nav-group.compact-open>.subnav button:hover,
body.sidebar-collapsed .nav-group.compact-open>.subnav button.active {
  color:#145b76!important;
  background:#edf6f9!important;
  transform:none;
}
body.sidebar-collapsed .nav-group.compact-open>button:first-child {
  color:#fff;
  background:linear-gradient(135deg,#2684a5,#1d6f8e);
  box-shadow:0 7px 18px #071e2840;
}
@keyframes compact-menu-open {
  from { opacity:0;transform:translateX(-8px) scale(.98); }
  to { opacity:1;transform:translateX(0) scale(1); }
}
.audience-cards,
.campaign-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(310px, 1fr));
  gap: 16px;
}
.campaigns-head {
  margin-bottom: 16px;
}
.campaign-launcher {
  margin-bottom: 18px;
  padding: 22px;
  border: 1px solid #d8e5e9;
  border-radius: 17px;
  background: linear-gradient(125deg, #fff, #f2f8fa);
  box-shadow: 0 9px 26px #1738450d;
}
.campaign-launcher .section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 17px;
}
.campaign-launcher h2 {
  margin: 2px 0 0;
  color: #214653;
  font-size: 20px;
}
.safe-chip {
  padding: 7px 11px;
  border-radius: 999px;
  background: #e6f4ed;
  color: #287354;
  font-size: 10px;
  font-weight: 750;
}
.campaign-action-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(180px, 1fr));
  gap: 10px;
}
.campaign-action {
  display: grid;
  grid-template-columns: 43px minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
  min-height: 78px;
  padding: 12px;
  border: 1px solid #dce6e9;
  border-radius: 12px;
  background: #fff;
  color: #294d5b;
  text-align: left;
  box-shadow: 0 4px 13px #17384509;
  transition:
    transform 0.16s ease,
    box-shadow 0.16s ease,
    border-color 0.16s ease;
}
.campaign-action:hover {
  transform: translateY(-2px);
  border-color: #9cc4d1;
  box-shadow: 0 10px 22px #17384518;
}
.campaign-action-icon {
  display: grid;
  place-items: center;
  width: 43px;
  height: 43px;
  border-radius: 11px;
  background: #e7f2f6;
  color: #1e6d88;
  font-size: 19px;
  font-weight: 750;
}
.campaign-action strong,
.campaign-action small {
  display: block;
}
.campaign-action strong {
  font-size: 12px;
}
.campaign-action small {
  margin-top: 3px;
  color: #7a8d95;
  font-size: 9px;
  line-height: 1.3;
}
.campaign-action b {
  color: #9bb0b8;
  font-size: 17px;
}
.campaign-action.tone-phone .campaign-action-icon {
  background: #e5f2f7;
  color: #176c8c;
}
.campaign-action.tone-ai .campaign-action-icon {
  background: #f0eafa;
  color: #6d48a6;
}
.campaign-action.tone-email .campaign-action-icon {
  background: #e9f4ef;
  color: #2c7b5c;
}
.campaign-action.tone-pec .campaign-action-icon {
  background: #f2eef9;
  color: #65478f;
}
.campaign-action.tone-sms .campaign-action-icon {
  background: #fff1df;
  color: #a96418;
}
.campaign-action.tone-whatsapp .campaign-action-icon {
  background: #e5f6ed;
  color: #24754a;
}
.campaign-action.tone-multi .campaign-action-icon {
  background: #e8effa;
  color: #426ba2;
}
.campaign-action.tone-process .campaign-action-icon {
  background: #fbeaec;
  color: #a3444d;
}
@media (max-width: 1180px) {
  .campaign-action-grid {
    grid-template-columns: repeat(2, minmax(190px, 1fr));
  }
}
@media (max-width: 650px) {
  .campaign-action-grid {
    grid-template-columns: 1fr;
  }
  .campaign-launcher {
    padding: 15px;
  }
  .campaign-launcher .section-head {
    align-items: flex-start;
    gap: 10px;
  }
}
.audience-card,
.campaign-card {
  display: flex;
  flex-direction: column;
  min-height: 210px;
  padding: 19px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: #fff;
  box-shadow: var(--shadow-sm);
  transition: 0.16s ease;
}
.integration-state.disabled{padding:.65rem 1rem;border-radius:999px;background:#fff1f2;color:#9f1239;font-weight:800;border:1px solid #fecdd3}
.chatgpt-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}
.settings-summary{display:grid;grid-template-columns:140px 1fr;gap:.7rem;margin:1rem 0 0}.settings-summary dt{color:var(--muted)}.settings-summary dd{margin:0;font-weight:650}
.separation-list{list-style:none;padding:0;margin:1rem 0 0;display:grid;gap:.7rem}.separation-list li{display:flex;justify-content:space-between;gap:1rem;padding:.8rem;border:1px solid var(--line);border-radius:12px}.separation-list span{color:var(--muted)}
.tool-permission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.tool-permission-grid article{display:flex;flex-direction:column;gap:.4rem;padding:1rem;border:1px solid var(--line);border-radius:12px;background:#fff}.tool-permission-grid span,.tool-permission-grid small{color:var(--muted)}
.chatgpt-dialog{max-width:720px}.chatgpt-dialog textarea{min-height:110px}.chatgpt-dialog ol{line-height:1.7}
.provider-test-result{margin-top:1rem;padding:1rem 1.1rem;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.provider-test-result.testing{border-color:#93c5fd;background:#eff6ff;color:#1e40af}.provider-test-result.success{border-color:#86efac;background:#f0fdf4;color:#166534}.provider-test-result.error{border-color:#fca5a5;background:#fef2f2;color:#991b1b}.provider-test-result p{margin:.35rem 0 0}
@media(max-width:900px){.chatgpt-settings-grid,.tool-permission-grid{grid-template-columns:1fr}.settings-summary{grid-template-columns:1fr}.campaign-card footer{flex-wrap:wrap}}

/* Scheda Aziende: linguaggio visuale di Gestione Clienti Prospect.
   Solo presentazione: blocchi, campi dinamici e comandi restano quelli del modulo. */
.record-modal.record-companies .modal-card {
  width: min(1220px, 96vw);
  max-height: 94vh;
  padding: 0;
  overflow: auto;
  border: 1px solid #d9e1e7;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 30px 80px #10182838;
}
.record-modal.record-companies .modal-card > .page-head {
  min-height: 112px;
  margin: 0;
  padding: 24px 30px 20px;
  border-top: 0;
  border-bottom: 1px solid #e5eaf0;
  background: linear-gradient(135deg, #ffffff 0%, #f7fbfb 70%, #eef8f7 100%);
}
.record-modal.record-companies .record-heading {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 5px 0;
  color: #183b4a;
  font-size: 25px;
  line-height: 1.2;
}
.record-modal.record-companies .company-logo.detail {
  width: 54px;
  height: 54px;
  padding: 4px;
  border: 1px solid #d9e5e8;
  border-radius: 13px;
  background: #fff;
  object-fit: contain;
  box-shadow: 0 5px 16px #17384516;
}
.record-modal.record-companies .tabs {
  position: sticky;
  top: 0;
  z-index: 4;
  padding: 0 28px;
  background: #fff;
}
.record-modal.record-companies .tabs button {
  padding: 15px 18px 13px;
  color: #667085;
  font-weight: 700;
}
.record-modal.record-companies .tabs button.active {
  color: #176b72;
  border-bottom-color: #1d8b82;
}
.record-modal.record-companies .record-layout {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  padding: 22px 24px 92px !important;
  background: #f7f9fb;
}
.record-modal.record-companies .record-block {
  border: 1px solid #dfe5eb !important;
  border-radius: 13px !important;
  background: #fff;
  box-shadow: 0 3px 12px #1018280b !important;
}
.record-modal.record-companies .record-block:hover {
  transform: none;
  border-color: #c9d8dc !important;
  box-shadow: 0 8px 22px #10182810 !important;
}
.record-modal.record-companies .record-block > header {
  min-height: 72px;
  padding: 17px 18px 14px;
  background: #fff !important;
  border-bottom: 1px solid #edf0f3;
}
.record-modal.record-companies .record-block h3 {
  color: #344054;
  font-size: 16px;
  font-weight: 750;
}
.record-modal.record-companies .record-block header p {
  margin-top: 4px;
  color: #7b8794;
  font-size: 12px;
  line-height: 1.4;
}
.record-modal.record-companies .record-block-fields {
  padding: 10px 18px 20px;
  gap: 2px 16px;
}
.record-modal.record-companies label {
  margin: 9px 0;
  color: #475467;
  font-size: 12px;
  font-weight: 650;
}
.record-modal.record-companies input,
.record-modal.record-companies select,
.record-modal.record-companies textarea {
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  color: #1d2939;
}
.record-modal.record-companies input:focus,
.record-modal.record-companies select:focus,
.record-modal.record-companies textarea:focus {
  border-color: #2f8f89;
  box-shadow: 0 0 0 3px #2f8f8920;
}
.record-modal.record-companies .block-toggle {
  border-color: #d6e4e4;
  background: #f4faf9;
  color: #176b72;
}
.record-modal.record-companies .form-actions {
  margin: 0 -24px -92px;
  padding: 15px 28px;
  border-top: 1px solid #dfe5eb;
  background: #fffffff2;
}
.record-modal.record-companies .related-panel {
  min-height: 440px;
  padding: 24px;
  background: #f7f9fb;
}
@media (max-width: 820px) {
  .record-modal.record-companies .modal-card { width: 100%; max-height: 96vh; border-radius: 14px; }
  .record-modal.record-companies .modal-card > .page-head { padding: 20px; }
  .record-modal.record-companies .record-layout { grid-template-columns: 1fr; padding: 16px 16px 92px !important; }
  .record-modal.record-companies .form-actions { margin-left: -16px; margin-right: -16px; }
  .record-modal.record-companies .tabs { padding: 0 12px; overflow-x: auto; }
}
.audience-card:hover,
.campaign-card:hover {
  transform: translateY(-2px);
  border-color: #bdd5de;
  box-shadow: 0 12px 28px #17384515;
}
.audience-card header,
.campaign-card header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.audience-card h3,
.campaign-card h3 {
  margin: 0 0 5px;
  color: #183d4c;
  font-size: 16px;
}
.audience-card p,
.campaign-card p {
  margin: 8px 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
.audience-kind {
  display: inline-flex;
  padding: 5px 9px;
  border-radius: 999px;
  background: #e9f4f7;
  color: #17647f;
  font-size: 10px;
  font-weight: 750;
}
.audience-kind.static {
  background: #fff2df;
  color: #a75f0a;
}
.audience-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin-top: auto;
  padding-top: 15px;
  border-top: 1px solid #edf2f4;
}
.audience-metrics strong,
.audience-metrics small {
  display: block;
}
.audience-metrics strong {
  font-size: 16px;
}
.audience-metrics small {
  color: #8a9aa1;
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.empty-state,
.loading-state,
.error-state {
  grid-column: 1/-1;
  padding: 46px 24px;
  border: 1px dashed #cddde3;
  border-radius: 15px;
  background: #f9fbfc;
  text-align: center;
  color: var(--muted);
}
.empty-state strong,
.error-state strong {
  display: block;
  margin-bottom: 6px;
  color: #294c5b;
  font-size: 16px;
}
.error-state {
  border-color: #efc7c7;
  background: #fff8f8;
  color: #a14141;
}
.list-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 18px;
  padding: 20px;
}
.builder-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 14px 0 8px;
}
.segment-group {
  margin: 8px 0;
  padding: 12px;
  border: 1px solid #dce6ea;
  border-radius: 12px;
  background: #f8fbfc;
}
.segment-group.nested {
  margin-left: 22px;
  background: #fff;
}
.segment-group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 9px;
}
.segment-group-head select {
  width: auto;
  min-height: 34px;
}
.segment-rule {
  display: grid;
  grid-template-columns: 1.2fr 1.2fr 0.85fr 1.2fr auto;
  gap: 7px;
  margin: 7px 0;
}
.segment-rule input,
.segment-rule select {
  min-width: 0;
  min-height: 36px;
  padding: 6px 8px;
}
.preview-panel {
  position: sticky;
  top: 18px;
  align-self: start;
  padding: 18px;
  border: 1px solid #d8e5e9;
  border-radius: 14px;
  background: linear-gradient(145deg, #fff, #f3f8fa);
  box-shadow: var(--shadow-sm);
}
.preview-panel .preview-count {
  display: block;
  margin: 8px 0 2px;
  color: #125b78;
  font-size: 38px;
  font-weight: 780;
}
.preview-panel small {
  color: var(--muted);
}
.list-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 18px;
}
.list-summary,
.linked-campaigns,
.safe-delivery {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  box-shadow: var(--shadow-sm);
}
.list-summary dl {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
.list-summary dt {
  color: #8a9ba2;
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.6px;
}
.list-summary dd {
  margin: 3px 0;
  font-size: 13px;
  font-weight: 650;
}
.preview-records {
  margin-top: 16px;
}
.list-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 16px 0;
}
.campaign-notice,
.safe-delivery {
  display: flex;
  gap: 12px;
  margin-bottom: 16px;
  background: #f2faf7;
  border-color: #cfe5da;
  color: #32664f;
}
.campaign-notice strong,
.safe-delivery strong {
  display: block;
}
.campaign-audience {
  margin: 12px 0;
  padding: 14px;
  border: 1px solid #dfe8eb;
  border-radius: 12px;
  background: #f8fbfc;
}
.campaign-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 18px;
  padding: 20px;
}
.campaign-preview {
  padding: 16px;
  border-radius: 13px;
  background: #123f52;
  color: #fff;
}
.campaign-preview strong {
  display: block;
  font-size: 32px;
}
.campaign-preview small {
  color: #bcd8e3;
}
.safe-delivery {
  margin-top: 12px;
  font-size: 12px;
}
.linked-campaigns ul {
  margin: 8px 0;
  padding-left: 18px;
}
@media (max-width: 1100px) {
  .list-form,
  .list-detail-grid,
  .campaign-form {
    grid-template-columns: 1fr;
  }
  .preview-panel {
    position: static;
  }
  .subnav {
    display: none;
  }
}
@media (max-width: 700px) {
  .audience-cards,
  .campaign-grid {
    grid-template-columns: 1fr;
  }
  .segment-rule {
    grid-template-columns: 1fr;
  }
  .segment-group.nested {
    margin-left: 8px;
  }
  .list-summary dl {
    grid-template-columns: 1fr;
  }
  .audience-metrics {
    grid-template-columns: repeat(2, 1fr);
  }
}
.cc-capacity-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 13px;
  margin: 18px 0;
}
.cc-capacity-grid article {
  padding: 17px;
  background: #fff;
  border: 1px solid #d9e6e9;
  border-radius: 14px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.cc-capacity-grid article > span {
  color: #71848c;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.07em;
}
.cc-capacity-grid strong {
  font-size: 21px;
}
.cc-capacity-grid small {
  color: #6a7e86;
}
.cc-capacity-grid .unknown {
  color: #b46a24;
}
.cc-layout {
  display: grid;
  grid-template-columns: 235px minmax(0, 1fr);
  gap: 18px;
}
.cc-sections {
  display: flex;
  flex-direction: column;
  background: #143d50;
  padding: 10px;
  border-radius: 14px;
  height: max-content;
  position: sticky;
  top: 15px;
}
.cc-sections button {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 9px;
  border: 0;
  background: transparent;
  color: #d9e8ee;
  text-align: left;
  border-radius: 8px;
  cursor: pointer;
}
.cc-sections button:hover {
  background: #28566a;
}
.cc-sections b {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border: 1px solid #7394a2;
  border-radius: 50%;
  font-size: 10px;
}
.cc-panel {
  background: #fff;
  border: 1px solid #dce7ea;
  border-radius: 14px;
  padding: 20px;
  min-height: 250px;
}
.capability-table > div {
  display: grid;
  grid-template-columns: 1.5fr 0.8fr 1fr;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border-bottom: 1px solid #edf2f4;
}
.cc-feature-detail {
  padding: 24px;
  background: #f3f8f9;
  border-radius: 12px;
  font-size: 16px;
  line-height: 1.6;
}
.cc-wallboard {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.cc-wallboard article {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 15px;
  background: #fff;
  border: 1px solid #dce7ea;
  border-radius: 12px;
}
.cc-wallboard span {
  color: #667c85;
  font-size: 12px;
}
.cc-capacity-box {
  padding: 16px;
  background: #eff7fa;
  border-radius: 12px;
  display: flex;
  flex-direction: column;
}
.choice-cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.choice-cards label {
  padding: 18px;
  border: 1px solid #d7e4e8;
  border-radius: 13px;
}
.choice-cards input {
  width: auto;
}
.cc-campaign-wizard .wizard-steps-nav {
  max-height: 740px;
  overflow: auto;
}
.cc-campaign-wizard .wizard-main {
  min-height: 730px;
}
@media (max-width: 1050px) {
  .cc-capacity-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .cc-layout {
    grid-template-columns: 1fr;
  }
  .cc-sections {
    position: static;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  .cc-wallboard {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 650px) {
  .cc-capacity-grid,
  .cc-sections,
  .choice-cards {
    grid-template-columns: 1fr;
  }
  .capability-table > div {
    grid-template-columns: 1fr;
  }
  .cc-campaign-wizard .wizard-main {
    min-height: 0;
  }
}
.ycc-shell{display:flex;flex-direction:column;gap:18px}.ycc-header,.ycc-section-head,.ycc-pbx-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.ycc-header h1{margin:.2rem 0}.ycc-header p,.ycc-pbx-head p{margin:.35rem 0;color:var(--muted)}.ycc-header-actions{display:flex;gap:10px}.ycc-workspace{display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;align-items:start}.ycc-nav{background:#102a43;border-radius:18px;padding:10px;max-height:72vh;overflow:auto;position:sticky;top:78px;box-shadow:0 14px 32px #102a4320}.ycc-nav button{display:block;width:100%;border:0;background:transparent;color:#d9e7f3;text-align:left;padding:10px 12px;border-radius:10px;cursor:pointer;font:inherit}.ycc-nav button:hover,.ycc-nav button.active{background:#1f5774;color:#fff}.ycc-pbx-head,.ycc-card{background:#fff;border:1px solid #dce6ed;border-radius:16px;padding:20px;box-shadow:0 8px 24px #17354d0b}.ycc-status{display:grid;text-align:right;gap:3px}.status-dot{width:10px;height:10px;border-radius:50%;background:#d59b23;justify-self:end}.ycc-kpis{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:12px;margin:14px 0}.ycc-kpis article{background:#fff;border:1px solid #dce6ed;border-radius:14px;padding:16px;display:grid;gap:6px}.ycc-kpis article>span{color:var(--muted);font-size:.82rem}.ycc-kpis strong{font-size:1.65rem}.data-source{display:inline-flex;width:max-content;border-radius:999px;padding:3px 8px;font-size:.7rem;font-weight:700;text-transform:uppercase}.data-source.snapshot{background:#fff0cb;color:#805b00}.data-source.live{background:#dff6eb;color:#087443}.data-source.na{background:#edf1f4;color:#647482}.ycc-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ycc-card dl{display:grid;grid-template-columns:1fr auto;gap:9px}.ycc-card dt{color:var(--muted)}.warning-card{border-left:4px solid #d59b23;margin-bottom:14px}.ycc-command-grid,.ycc-resource-grid{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px}.ycc-command-grid article,.ycc-resource-grid article,.ycc-alert-list article{background:#fff;border:1px solid #dce6ed;border-radius:14px;padding:16px}.command-class{font-size:.68rem;font-weight:800;color:#7c4b11}.ycc-alert-list{display:grid;gap:10px}.ycc-alert-list article{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:12px}.severity{font-size:.72rem;font-weight:800;text-transform:uppercase}.severity.critical,.severity.error{color:#ad2430}.severity.warning{color:#9b6500}.loading-state{padding:50px;text-align:center;color:var(--muted)}
@media(max-width:1000px){.ycc-workspace{grid-template-columns:1fr}.ycc-nav{position:static;max-height:none;display:flex;overflow:auto}.ycc-nav button{min-width:max-content}.ycc-kpis{grid-template-columns:repeat(2,1fr)}.ycc-command-grid,.ycc-resource-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.ycc-header,.ycc-section-head,.ycc-pbx-head{flex-direction:column}.ycc-kpis,.ycc-dashboard-grid,.ycc-command-grid,.ycc-resource-grid{grid-template-columns:1fr}.ycc-alert-list article{grid-template-columns:1fr}}
.security-head p{margin:.35rem 0}.security-launchpad{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px;margin-bottom:18px}.security-launchpad button{border:1px solid #dbe5ec;background:#fff;border-radius:16px;padding:18px;text-align:left;display:grid;gap:6px;cursor:pointer;box-shadow:0 8px 22px #17354d0a}.security-launchpad button>span{width:38px;height:38px;border-radius:11px;background:#e8f2f7;color:#165a78;display:grid;place-items:center;font-size:1.2rem}.security-launchpad button strong{font-size:.95rem}.security-launchpad button small{color:var(--muted);line-height:1.3}.security-launchpad button:hover,.security-launchpad button.active{border-color:#24799d;box-shadow:0 10px 28px #24799d20;transform:translateY(-1px)}.security-launchpad button.active>span{background:#24799d;color:#fff}.security-panel{display:none}.security-panel.active{display:block}.security-legend{display:flex;gap:12px;color:var(--muted);font-size:.8rem}.permission-matrix{display:grid;grid-template-columns:repeat(2,minmax(300px,1fr));gap:14px}.matrix-module{background:#fff!important;border:1px solid #dce6ed!important;border-radius:16px!important;padding:18px!important;box-shadow:0 8px 24px #17354d0b}.matrix-module h3{margin-top:0}.matrix-actions{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important;margin:14px 0}.matrix-actions label{background:#f6f9fb;border-radius:9px;padding:7px!important;font-size:.78rem}.preview-selector{display:flex;align-items:end;justify-content:space-between;gap:20px}.org-chart{padding:22px;background:#f5f8fa;border-radius:15px}.org-node{background:#fff;border:1px solid #d9e4eb;border-top:4px solid #24799d;border-radius:12px;padding:12px;box-shadow:0 6px 16px #17354d10}.org-children{border-left:2px solid #b9ccd7;margin:12px 0 0 15px;padding-left:20px;display:grid;gap:10px}.team-node{background:#eaf4f7!important;border:1px solid #c9e0e8!important;border-radius:12px!important;padding:14px!important}.policy-row{display:grid!important;grid-template-columns:1fr auto 90px 45px!important;align-items:center;gap:12px;padding:13px 0!important;border-bottom:1px solid #edf1f4}.policy-row span{display:grid}.policy-row small{color:var(--muted)}.policy-row em{font-style:normal;color:var(--muted)}
.campaign-mode-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:12px 20px;background:#f4f8fa;border-bottom:1px solid #dce6ed}.campaign-mode-selector button{border:1px solid #d4e1e8;background:#fff;border-radius:12px;padding:11px 14px;display:grid;text-align:left;gap:3px;cursor:pointer}.campaign-mode-selector button small{color:var(--muted)}.campaign-mode-selector button.active{border-color:#24799d;background:#eaf6fa;box-shadow:0 0 0 2px #24799d22}.assisted-wizard{grid-template-columns:210px minmax(430px,1fr) 310px!important}.step-guide{display:none;background:#edf7fa;border:1px solid #c9e4ed;border-radius:13px;padding:15px;margin:12px 0;position:relative}.step-guide.open{display:block}.step-guide>button{position:absolute;right:10px;top:8px;border:0;background:transparent;font-size:1.2rem;cursor:pointer}.step-guide h4{margin:0 0 7px;color:#145c79}.step-guide p{margin:0 25px 10px 0}.step-guide dl{display:grid;grid-template-columns:140px 1fr;gap:6px;font-size:.8rem}.step-guide dt{font-weight:700}.step-guide dd{margin:0;color:#496270}.helper-toggle,.field-helper{border:0;background:#e4f1f6;color:#14617f;border-radius:999px;cursor:pointer;font-weight:800}.helper-toggle{padding:6px 10px}.field-helper{width:20px;height:20px;margin-right:5px}.guided-question{border-left:4px solid #e19b31;background:#fff8ea;border-radius:10px;padding:12px;margin-bottom:14px;display:grid;gap:3px}.guided-question span{font-size:.65rem;font-weight:800;color:#986010}.step-check-actions{border-top:1px solid #e3eaee;padding:14px 0;display:grid;gap:10px}.assistant-findings{display:grid;gap:6px}.finding{display:grid;grid-template-columns:90px 1fr;gap:8px;margin:0!important;padding:8px;border-radius:8px;background:#f4f7f9;font-size:.78rem}.finding.blocking{background:#ffeded;color:#912b33}.finding.warning{background:#fff6df;color:#805900}.finding.suggestion{background:#eaf5fb;color:#175f7c}.campaign-ai-panel{background:#102f43;color:#fff;padding:17px;border-radius:14px;display:grid;gap:12px;align-content:start;position:relative;max-height:68vh;overflow:auto}.wizard-summary .campaign-ai-panel{margin-top:18px}.campaign-ai-panel.collapsed>*:not(.ai-collapse):not(.eyebrow){display:none}.ai-collapse{position:absolute;right:9px;top:8px;border:0;background:#ffffff22;color:#fff;border-radius:7px;cursor:pointer}.campaign-ai-panel h3{margin:0}.ai-provider-state{font-size:.78rem;color:#d2e2ea}.ai-quick-actions{display:grid;gap:7px}.ai-quick-actions button{border:1px solid #ffffff24;background:#ffffff12;color:#fff;border-radius:8px;text-align:left;padding:8px;cursor:pointer}.ai-quick-actions button:hover{background:#ffffff24}.ai-proposal{background:#fff;color:#203746;border-radius:10px;padding:11px;font-size:.78rem}.proposal-card pre{max-height:150px;overflow:auto;white-space:pre-wrap;background:#f1f5f7;padding:8px;border-radius:7px}.proposal-card>div{display:flex;gap:5px;flex-wrap:wrap}.proposal-card button{font-size:.7rem;padding:6px 8px}.ai-safety{font-size:.7rem;color:#b8ced9}.settings-surface{background:#fff;border:1px solid #dce6ed;border-radius:16px;padding:20px}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.settings-grid .full{grid-column:1/-1}
@media(max-width:1100px){.security-launchpad{grid-template-columns:repeat(3,1fr)}.permission-matrix{grid-template-columns:1fr}.assisted-wizard{grid-template-columns:180px minmax(0,1fr)!important}.assisted-wizard .campaign-ai-panel{grid-column:1/-1;max-height:none}}@media(max-width:700px){.security-launchpad,.campaign-mode-selector,.settings-grid{grid-template-columns:1fr}.matrix-actions{grid-template-columns:repeat(2,1fr)!important}.policy-row{grid-template-columns:1fr auto!important}.assisted-wizard{grid-template-columns:1fr!important}.step-guide dl{grid-template-columns:1fr}.preview-selector{display:block}}
.operator-authority{display:grid;gap:16px}.authority-chain{background:#102f43;color:#fff;border-radius:12px;padding:14px;text-align:center}.authority-chain b{color:#68c3df;margin:0 8px}.operator-picker{background:#f5f8fa;border-radius:12px;padding:13px;display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.operator-picker h4{grid-column:1/-1;margin:0}.operator-picker label{background:#fff;border:1px solid #dce5eb;border-radius:9px;padding:9px;display:flex;gap:8px}.operator-picker label span{display:grid}.operator-picker small{color:var(--muted)}.three-way-operators{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.three-way-operators section{background:#f5f8fa;border:1px solid #dde6ec;border-radius:11px;padding:12px;min-height:110px}.three-way-operators h4{margin:0 0 8px}.three-way-operators>section>strong{font-size:1.6rem}.three-way-operators p{font-size:.76rem}.operator-readiness{display:flex;justify-content:space-between;border-radius:10px;padding:11px;margin:10px 0}.operator-readiness.ready{background:#e4f6eb;color:#107143}.operator-readiness.not-ready{background:#ffeded;color:#982c36}
@media(max-width:700px){.operator-picker,.three-way-operators{grid-template-columns:1fr}.operator-picker h4{grid-column:auto}}
.commission-head h1{margin:.25rem 0}.commission-phase{background:#dff3f7;color:#155f75;border:1px solid #b9dfe8;border-radius:999px;padding:7px 12px;font-size:.75rem;font-weight:800}.commission-safety{display:grid;grid-template-columns:auto 1fr;gap:12px;background:#fff8e5;border:1px solid #efdaa0;border-left:4px solid #d99b25;border-radius:12px;padding:14px 16px;margin-bottom:18px}.commission-safety span{color:#6f5a2b}.commission-foundation{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px}.commission-foundation article{background:#fff;border:1px solid #dce6ed;border-radius:16px;padding:20px;box-shadow:0 8px 24px #17354d0b}.commission-foundation h3{margin-top:0}.commission-foundation p{color:var(--muted);line-height:1.5}.commission-table{margin-top:18px}.commission-flags{display:flex;gap:8px;margin-top:16px}.commission-flags span{background:#edf3f6;color:#526b78;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:800}.commission-flags span:first-child{background:#e2f5ea;color:#147245}.commission-nav>button:before{content:"▦";display:inline-grid;place-items:center;width:22px;margin-right:8px;color:#9ccbdd}@media(max-width:800px){.commission-foundation{grid-template-columns:1fr}.commission-safety{grid-template-columns:1fr}}
.commission-import-preview{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:18px;margin-top:18px}.commission-import-preview>div{background:#fff;border:1px solid #dce6ed;border-radius:16px;padding:20px}.commission-import-preview input[type=file]{display:block;width:100%;margin:16px 0;padding:12px;border:1px dashed #aac4d0;border-radius:10px}.preview-summary{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr;align-items:center;gap:8px;background:#f1f7f9;border-radius:12px;padding:12px}.preview-summary strong{font-size:1.4rem;color:#155f75}.preview-summary span{font-size:.75rem;color:var(--muted)}.commission-import-preview code{font-size:.68rem;word-break:break-all}.commission-import-preview .safe-chip{margin-top:12px}@media(max-width:850px){.commission-import-preview{grid-template-columns:1fr}.preview-summary{grid-template-columns:auto 1fr}}
.document-system-hero{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:22px;padding:28px;border:1px solid #d8e6ea;border-radius:20px;background:linear-gradient(135deg,#fff 0%,#eef8fa 100%);box-shadow:var(--shadow-sm);margin-bottom:18px}.document-system-hero h1{margin:7px 0 5px;font-size:30px}.document-system-hero p{margin:0;color:var(--muted)}.document-company-context{display:flex;flex-direction:column;justify-content:center;padding:18px;border:1px solid #cce1e7;border-radius:15px;background:#fff}.document-company-context span,.document-company-context small{color:var(--muted);font-size:11px}.document-company-context strong{margin:5px 0;color:#144e66}.document-safety-strip{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px 18px;padding:11px 14px;border-radius:11px;background:#eaf7ef;color:#276348;font-size:11px}.document-safety-strip strong{font-size:12px}.document-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.document-kpis>*{min-height:125px;padding:18px;border:1px solid #dce8eb;border-radius:15px;background:#fff;text-align:left;box-shadow:var(--shadow-sm)}.document-kpis button{cursor:pointer}.document-kpis span,.document-kpis small{display:block;color:var(--muted)}.document-kpis strong{display:block;margin:10px 0;font-size:28px;color:#145d76}.document-kpis .warning strong{color:#b96a24}.document-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:18px}.document-dashboard-grid>section,.document-dashboard-grid>aside{padding:20px;border:1px solid #dce8eb;border-radius:16px;background:#fff}.document-recent article,.document-company-row,.integration-company-list article,.document-error-list article{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf2f4}.document-recent article>div,.document-company-row>span,.integration-company-list article>div,.document-error-list article>div{display:flex;flex:1;flex-direction:column}.document-recent small,.document-company-row small,.integration-company-list small,.document-error-list small{color:var(--muted)}.document-recent time{font-size:11px;color:var(--muted)}.document-company-row b{font-size:10px;color:#9a6a32}.document-company-row b.ok{color:#267c54}.document-list-head{display:flex;align-items:center;justify-content:space-between;margin:18px 0}.group-company-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.group-company-grid article{padding:20px;border:1px solid #d9e7ea;border-radius:16px;background:#fff}.group-company-grid header{display:flex;align-items:center;gap:12px}.company-monogram{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#dff1f5;color:#12617b;font-weight:800}.group-company-grid header div{flex:1}.group-company-grid h3,.group-company-grid p{margin:0}.group-company-grid dl{display:grid;gap:9px;margin:18px 0 0}.group-company-grid dl div{display:flex;justify-content:space-between}.group-company-grid dt{color:var(--muted)}.document-generator-form{display:grid;gap:16px}.document-form-section{display:grid;grid-template-columns:52px minmax(230px,.8fr) minmax(220px,1fr) minmax(220px,1fr);gap:16px;align-items:start;padding:22px;border:1px solid #dce8eb;border-radius:16px;background:#fff}.document-form-section .step-number{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#dff1f5;color:#12617b;font-weight:800}.document-form-section h2,.document-form-section p{margin:0}.document-form-section .full{grid-column:3/-1}.integration-contract{display:flex;align-items:center;justify-content:space-between;padding:22px;border:1px solid #dce8eb;border-radius:16px;background:#fff}.integration-contract h2,.integration-contract p{margin:3px 0}.integration-off{padding:8px 12px;border-radius:999px;background:#fbe9e8;color:#a44640;font-weight:800;font-size:11px}.integration-company-list,.document-error-list{margin-top:14px;padding:0 18px;border:1px solid #dce8eb;border-radius:16px;background:#fff}.document-error-list code{max-width:45%;overflow:hidden;text-overflow:ellipsis}.document-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.document-settings-grid section{padding:20px;border:1px solid #dce8eb;border-radius:16px;background:#fff}.document-settings-grid section>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #edf2f4}.document-settings-grid code{color:#145d76}@media(max-width:900px){.document-system-hero,.document-dashboard-grid,.document-settings-grid{grid-template-columns:1fr}.document-kpis{grid-template-columns:1fr 1fr}.document-form-section{grid-template-columns:45px 1fr}.document-form-section label,.document-form-section .full{grid-column:2}.document-company-context{grid-column:1}.document-safety-strip{grid-column:1}}@media(max-width:560px){.document-kpis{grid-template-columns:1fr}}
.document-detail-summary{display:grid;gap:12px;padding:22px}.document-detail-summary>button{justify-self:start}.document-detail-summary .document-security-note{margin-top:10px}
.relation-head-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.relation-link-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.relation-link-form label{display:flex;flex-direction:column;gap:8px;font-weight:700;color:var(--ink)}.relation-link-form .consent{grid-column:1/-1;flex-direction:row;align-items:center;font-weight:600}.relation-link-form .form-actions{grid-column:1/-1}@media(max-width:760px){.relation-head-actions,.relation-search{width:100%}.relation-link-form{grid-template-columns:1fr}.relation-link-form .consent,.relation-link-form .form-actions{grid-column:1}}
.related-list-filter{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px;padding:12px 16px;border:1px solid #c9e2e9;border-radius:12px;background:#eef8fa;color:#174f66}.related-list-filter strong{color:#123f52}
.document-advanced-filters{display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px;margin:-6px 0 16px;padding:14px;border:1px solid #dce8eb;border-radius:0 0 14px 14px;background:#f8fbfc}.document-advanced-filters label{display:grid;gap:4px;font-size:11px;color:var(--muted)}.document-notification-strip{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:14px;padding:12px 15px;border-radius:12px;background:#fff7e4;border:1px solid #ecd99f;color:#715a20}.category-manager-list,.document-acl-list,.document-audit-list{display:grid;gap:9px;margin:18px 0}.category-manager-list article,.document-acl-list article,.document-audit-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px;border:1px solid #dce7ec;border-radius:11px;background:#fff}.category-manager-list article div,.document-acl-list article span{display:grid}.category-manager-list small,.document-acl-list small{color:var(--muted)}.document-acl-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.document-acl-form fieldset{grid-column:1/-1;display:flex;gap:12px;flex-wrap:wrap;border:1px solid #dce7ec;border-radius:10px}.document-acl-form .form-actions{grid-column:1/-1}.document-audit-list article{display:grid;grid-template-columns:1fr 1fr auto}.document-audit-list time{color:var(--muted);font-size:12px}@media(max-width:900px){.document-advanced-filters{grid-template-columns:1fr 1fr}.document-acl-form{grid-template-columns:1fr}}@media(max-width:560px){.document-advanced-filters{grid-template-columns:1fr}}
.universal-launchpad{margin-top:20px}.universal-launchpad .launchpad-level{display:flex;flex-wrap:wrap;align-items:flex-start;gap:14px}.universal-launchpad .launchpad-card{box-sizing:border-box;flex:2 1 280px;min-width:min(100%,220px);width:auto;background:var(--card-bg,#fff);color:var(--card-text,var(--ink));position:relative}.launchpad-card.shape-square{aspect-ratio:1}.launchpad-card.shape-vertical{min-height:220px;align-content:space-between}.launchpad-card.size-small{min-height:82px}.launchpad-card.size-large{min-height:180px}.launchpad-card.size-custom{flex-grow:var(--card-cols,1);flex-basis:calc(180px * var(--card-cols,1));min-height:calc(105px * var(--card-rows,1))}.launchpad-card.status-preparation{border-style:dashed;opacity:.78}.launchpad-card img{width:46px;height:46px;object-fit:contain;border-radius:10px}.launchpad-card em{display:block;margin-top:5px;font-size:10px;font-style:normal;color:#a16a1d}.launchpad-card>i{position:absolute;right:14px;bottom:12px;font-style:normal;font-size:24px}.launchpad-breadcrumb{display:flex;align-items:center;gap:10px;margin-top:8px}.launchpad-card-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;max-height:70vh;overflow:auto;padding-right:5px}.launchpad-card-form .full{grid-column:1/-1}.launchpad-card-form select[multiple]{min-height:110px}.launchpad-preview{padding:14px;border:1px dashed #b7cdd7;border-radius:12px;background:#f6fafb}.launchpad-preview>span{display:block;margin-bottom:8px;font-size:11px;font-weight:800;color:var(--muted)}.launchpad-editor-tree{display:grid;gap:12px;margin-top:12px}.launchpad-card-dropzone{min-height:74px;padding:10px;border:1px dashed #b8ccd6;border-radius:12px;background:#f7fafb}.launchpad-card-dropzone>header{display:flex;justify-content:space-between;margin-bottom:7px;font-weight:800}.launchpad-card-dropzone>header small{color:var(--muted);font-weight:500}.launchpad-card-dropzone>.edit-launchpad-card{display:flex;width:100%;align-items:center;gap:8px;margin:5px 0}.launchpad-card-dropzone>.edit-launchpad-card small{margin-left:auto;color:var(--muted)}@media(max-width:900px){.universal-launchpad .launchpad-card{flex-basis:calc(50% - 7px)}.launchpad-card-form{grid-template-columns:1fr}.launchpad-card-form .full{grid-column:1}}@media(max-width:560px){.universal-launchpad .launchpad-card{flex:1 1 100%!important;max-width:none!important;min-width:100%}}
.address-autocomplete{position:relative;grid-column:1/-1}.address-input-row{display:flex;gap:10px;align-items:stretch}.address-input-row input{flex:1}.address-input-row button{white-space:nowrap}.address-suggestions{position:absolute;z-index:30;left:0;right:0;top:calc(100% - 20px);max-height:300px;overflow:auto;padding:8px;background:#fff;border:1px solid #cbdde7;border-radius:14px;box-shadow:0 18px 45px rgba(16,48,67,.2)}.address-suggestions button{display:flex;width:100%;padding:11px 12px;border:0;border-radius:10px;background:transparent;text-align:left;flex-direction:column;gap:3px;color:#17354d}.address-suggestions button:hover,.address-suggestions button:focus{background:#edf7fb;outline:2px solid #76bfd4}.address-suggestions button small{color:#6e8998}.address-suggestions .empty{display:block;padding:14px;color:#698492}.address-status{display:block;margin-top:6px;color:#68828f}.address-autocomplete .hidden{display:none}@media(max-width:700px){.address-input-row{align-items:stretch;flex-direction:column}.address-suggestions{top:calc(100% - 8px)}}
.launchpad-screen-editor-modal,.launchpad-card-editor-modal{padding:28px;background:rgba(8,35,48,.64);backdrop-filter:blur(8px)}.launchpad-screen-editor-modal .modal-card,.launchpad-card-editor-modal .modal-card{width:min(1080px,96vw);max-height:92vh;padding:0;overflow:auto;border:1px solid rgba(188,215,225,.85);border-radius:24px;background:#f4f8fa;box-shadow:0 30px 90px rgba(4,31,45,.3)}.launchpad-screen-editor-modal .modal-card>.page-head,.launchpad-card-editor-modal .modal-card>.page-head{position:sticky;z-index:8;top:0;margin:0;padding:24px 28px;border-bottom:1px solid #d7e6eb;border-radius:24px 24px 0 0;background:linear-gradient(135deg,#fff 0%,#eff8fb 100%)}.launchpad-screen-editor-modal .page-head h2,.launchpad-card-editor-modal .page-head h2{margin:0;font-size:30px;letter-spacing:-.035em}.launchpad-screen-editor-modal .page-head p,.launchpad-card-editor-modal .page-head p{margin:6px 0 0;font-size:14px}.launchpad-screen-editor-modal .page-head>[data-close],.launchpad-card-editor-modal .page-head>[data-close]{min-width:92px;border-color:#bfd4dd;background:#fff;box-shadow:0 5px 14px rgba(17,65,85,.08)}
.launchpad-screen-editor-modal #launchpad-screen-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:26px 28px 20px}.launchpad-screen-editor-modal #launchpad-screen-form label,.launchpad-card-editor-modal .launchpad-card-form>label{display:flex;min-width:0;gap:8px;flex-direction:column;padding:14px 15px;border:1px solid #dbe8ed;border-radius:15px;background:#fff;color:#193442;font-weight:800;box-shadow:0 4px 14px rgba(20,66,84,.04)}.launchpad-screen-editor-modal #launchpad-screen-form label:first-child{grid-column:1/-1}.launchpad-screen-editor-modal #launchpad-screen-form input,.launchpad-card-editor-modal .launchpad-card-form input,.launchpad-card-editor-modal .launchpad-card-form select{min-height:48px;border-color:#cddfe6;border-radius:11px;background:#f9fbfc;font-weight:650}.launchpad-screen-editor-modal #launchpad-screen-form input:focus,.launchpad-card-editor-modal .launchpad-card-form input:focus,.launchpad-card-editor-modal .launchpad-card-form select:focus{border-color:#2d93ad;outline:3px solid rgba(45,147,173,.14);background:#fff}.launchpad-screen-editor-modal #launchpad-screen-form input[readonly]{color:#496b79;background:#edf3f5;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.launchpad-screen-editor-modal #launchpad-screen-form .form-actions{position:sticky;bottom:0;grid-column:1/-1;display:flex;justify-content:flex-end;margin:2px -28px -20px;padding:17px 28px;border-top:1px solid #d9e7ec;background:rgba(255,255,255,.94);backdrop-filter:blur(10px)}
.launchpad-screen-editor-modal .launchpad-editor-cards{margin:0;padding:22px 28px 28px;border-top:1px solid #d7e6eb;background:#fff}.launchpad-screen-editor-modal .launchpad-editor-cards>h3{margin:0 0 14px;font-size:20px}.launchpad-screen-editor-modal .card-editor-guide{padding:16px 18px;border:1px solid #bee0ea;border-radius:15px;background:linear-gradient(135deg,#eef9fc,#f8fcfd)}.launchpad-screen-editor-modal .launchpad-card-dropzone{padding:14px;border-color:#b8d5df;border-radius:15px;background:#f6fafb}.launchpad-screen-editor-modal .launchpad-card-dropzone>.edit-launchpad-card{min-height:52px;border-color:#d0e1e7;background:#fff;box-shadow:0 4px 12px rgba(19,61,78,.05)}
.launchpad-card-editor-modal .launchpad-card-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-height:none;padding:26px 28px 0;overflow:visible}.launchpad-card-editor-modal .launchpad-card-form>label:nth-of-type(1),.launchpad-card-editor-modal .launchpad-card-form>label:nth-of-type(2){border-color:#c5e1e9;background:linear-gradient(135deg,#fff,#f3fafc)}.launchpad-card-editor-modal .launchpad-card-form input[type=color]{width:100%;height:48px;padding:5px;border:1px solid #cadde4;border-radius:11px;cursor:pointer}.launchpad-card-editor-modal .launchpad-card-form input[type=color]::-webkit-color-swatch-wrapper{padding:0}.launchpad-card-editor-modal .launchpad-card-form input[type=color]::-webkit-color-swatch{border:0;border-radius:7px}.launchpad-card-editor-modal .launchpad-card-form select[multiple]{min-height:120px;padding:8px}.launchpad-card-editor-modal .launchpad-preview{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:18px;margin-top:4px;padding:20px;border:1px solid #b9dbe5;border-radius:18px;background:linear-gradient(135deg,#eaf7fa,#f8fcfd)}.launchpad-card-editor-modal .launchpad-preview>span{margin:0;color:#285b6d;font-size:12px;letter-spacing:.08em}.launchpad-card-editor-modal .launchpad-preview .launchpad-card{width:100%;max-width:520px;min-height:92px;margin-left:auto;background:var(--card-bg,#fff);color:var(--card-text,#17354d);box-shadow:0 8px 24px rgba(21,72,91,.1)}.launchpad-card-editor-modal .launchpad-card-form>.form-actions{position:sticky;z-index:7;bottom:0;display:flex;justify-content:flex-end;margin:0 -28px;padding:17px 28px;border-top:1px solid #d7e5ea;background:rgba(255,255,255,.95);backdrop-filter:blur(10px)}
@media(max-width:760px){.launchpad-screen-editor-modal,.launchpad-card-editor-modal{padding:8px}.launchpad-screen-editor-modal .modal-card,.launchpad-card-editor-modal .modal-card{width:100%;max-height:97vh;border-radius:17px}.launchpad-screen-editor-modal .modal-card>.page-head,.launchpad-card-editor-modal .modal-card>.page-head{padding:18px;border-radius:17px 17px 0 0}.launchpad-screen-editor-modal .page-head h2,.launchpad-card-editor-modal .page-head h2{font-size:24px}.launchpad-screen-editor-modal #launchpad-screen-form,.launchpad-card-editor-modal .launchpad-card-form{grid-template-columns:1fr;padding:18px}.launchpad-screen-editor-modal #launchpad-screen-form label:first-child{grid-column:auto}.launchpad-screen-editor-modal #launchpad-screen-form .form-actions,.launchpad-card-editor-modal .launchpad-card-form>.form-actions{margin:0 -18px;padding:14px 18px;flex-wrap:wrap}.launchpad-card-editor-modal .launchpad-preview{grid-template-columns:1fr}.launchpad-screen-editor-modal .launchpad-editor-cards{padding:18px}}
.module-navigation-editor-modal{padding:28px;background:rgba(8,35,48,.64);backdrop-filter:blur(8px)}.module-navigation-editor-modal .modal-card{width:min(1180px,96vw);max-height:92vh;padding:0;overflow:auto;border:1px solid #c6dce4;border-radius:24px;background:#f4f8fa;box-shadow:0 30px 90px rgba(4,31,45,.3)}.module-navigation-editor-modal .modal-card>.page-head{position:sticky;z-index:8;top:0;margin:0;padding:24px 28px;border-bottom:1px solid #d4e4ea;border-radius:24px 24px 0 0;background:linear-gradient(135deg,#fff,#eef8fb)}.module-navigation-editor-modal .page-head h2{margin:0;font-size:30px;letter-spacing:-.035em}.module-navigation-editor-modal .page-head p{max-width:680px;margin:6px 0 0}.module-navigation-editor-modal .page-head>[data-close]{min-width:92px;background:#fff}.module-navigation-editor-modal> .modal-card>form{padding:24px 28px 0}.navigation-editor-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.navigation-editor-summary article{padding:15px 17px;border:1px solid #d5e6ec;border-radius:15px;background:#fff;box-shadow:0 5px 16px rgba(18,62,78,.05)}.navigation-editor-summary span{display:block;color:#6b8793;font-size:12px;font-weight:750}.navigation-editor-summary strong{display:block;margin-top:3px;color:#18566e;font-size:25px}.navigation-editor-help{display:flex;gap:13px;align-items:center;margin-bottom:20px;padding:15px 17px;border:1px solid #bce0ea;border-radius:15px;background:linear-gradient(135deg,#eaf8fb,#f8fcfd)}.navigation-editor-help>span{color:#2586a2;font-size:22px;letter-spacing:-5px}.navigation-editor-help strong{color:#24576a}.navigation-editor-help p{margin:3px 0 0;color:#66838f;font-size:13px}.module-navigation-editor-modal .navigation-editor-grid{grid-template-columns:minmax(280px,.8fr) minmax(560px,1.6fr);gap:18px}.module-navigation-editor-modal .navigation-editor-grid>section{padding:18px;border:1px solid #d6e5ea;border-radius:17px;background:#fff}.module-navigation-editor-modal .navigation-editor-grid h3{margin:0 0 13px;color:#173b4a;font-size:19px}.module-navigation-editor-modal .navigation-module-search{width:100%;margin:-2px 0 13px;background:#f7fafb}.module-navigation-editor-modal .navigation-editor-list{gap:9px}.module-navigation-editor-modal .navigation-group-row{grid-template-columns:minmax(130px,1fr) 74px auto;padding:11px;border:1px solid #dce8ec;border-radius:12px;background:#f9fbfc}.module-navigation-editor-modal .navigation-editor-row{grid-template-columns:26px minmax(135px,1fr) minmax(145px,1fr) 72px 72px;gap:10px;align-items:center;padding:11px 12px;border-color:#d9e7ec;background:#fff;box-shadow:0 4px 12px rgba(20,64,80,.04);transition:transform .15s,box-shadow .15s,border-color .15s}.module-navigation-editor-modal .navigation-editor-row:hover{border-color:#9bcbd9;box-shadow:0 7px 18px rgba(19,79,99,.09)}.module-navigation-editor-modal .navigation-editor-row.dragging{opacity:.55;transform:scale(.985)}.module-navigation-editor-modal .navigation-editor-row>strong{color:#193d4c}.module-navigation-editor-modal .navigation-editor-row label{font-size:11px}.navigation-drag-handle{color:#63a7ba;font-size:20px;cursor:grab;letter-spacing:-5px}.navigation-drag-handle:active{cursor:grabbing}.module-navigation-editor-modal .navigation-editor-row input,.module-navigation-editor-modal .navigation-editor-row select,.module-navigation-editor-modal .navigation-group-row input{min-height:39px;padding:8px 9px;border-radius:9px}.fixed-navigation-entries{margin-top:18px;padding:18px;border:1px solid #d7e5ea;border-radius:17px;background:#fff}.fixed-navigation-entries header{display:flex;justify-content:space-between;gap:16px;align-items:center}.fixed-navigation-entries h3{margin:0;color:#173b4a}.fixed-navigation-entries p{margin:4px 0 0;color:#6b8793;font-size:13px}.fixed-navigation-entries header>span{padding:6px 10px;border-radius:999px;background:#edf4f6;color:#607c88;font-size:11px;font-weight:800}.fixed-navigation-entries>div{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.fixed-navigation-entries b{padding:8px 11px;border:1px solid #d9e6eb;border-radius:10px;background:#f7fafb;color:#466674;font-size:12px}.module-navigation-editor-modal form>.form-actions{position:sticky;z-index:7;bottom:0;display:flex;justify-content:flex-end;margin:20px -28px 0;padding:16px 28px;border-top:1px solid #d4e3e9;background:rgba(255,255,255,.95);backdrop-filter:blur(10px)}
@media(max-width:900px){.module-navigation-editor-modal{padding:8px}.module-navigation-editor-modal .modal-card{width:100%;max-height:97vh;border-radius:17px}.module-navigation-editor-modal .navigation-editor-grid{grid-template-columns:1fr}.module-navigation-editor-modal .navigation-editor-row{grid-template-columns:24px 1fr 1fr}.module-navigation-editor-modal .navigation-editor-row label:nth-last-child(-n+2){grid-column:auto}.navigation-editor-summary{grid-template-columns:1fr}.fixed-navigation-entries header{align-items:flex-start;flex-direction:column}}
.field-editor-modal{padding:28px;background:rgba(8,35,48,.64);backdrop-filter:blur(8px)}.field-editor-modal .modal-card{width:min(900px,96vw);max-height:92vh;padding:0;overflow:auto;border:1px solid #c6dce4;border-radius:24px;background:#f4f8fa;box-shadow:0 30px 90px rgba(4,31,45,.3)}.field-editor-modal .modal-card>.page-head{position:sticky;z-index:8;top:0;margin:0;padding:23px 28px;border-bottom:1px solid #d4e4ea;border-radius:24px 24px 0 0;background:linear-gradient(135deg,#fff,#eef8fb)}.field-editor-modal .page-head h2{margin:0;font-size:29px;letter-spacing:-.035em}.field-editor-modal .page-head p{margin:6px 0 0}.field-editor-modal .page-head>[data-close]{min-width:92px;background:#fff}.field-editor-modal .field-editor-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:24px 28px 0}.field-editor-modal .field-editor-form>.full{grid-column:1/-1}.field-editor-step{display:flex;gap:12px;align-items:center;margin-top:4px;padding:12px 14px;border-radius:14px;background:linear-gradient(135deg,#eaf7fa,#f7fcfd)}.field-editor-step>span{display:grid;width:32px;height:32px;flex:0 0 32px;place-items:center;border-radius:10px;background:#1b7895;color:#fff;font-weight:850}.field-editor-step strong{display:block;color:#1c4c5f}.field-editor-step small{display:block;margin-top:2px;color:#6a8692}.field-editor-form>label{display:flex;gap:8px;flex-direction:column;padding:14px 15px;border:1px solid #d9e7ec;border-radius:14px;background:#fff;color:#1b3947;font-weight:800;box-shadow:0 4px 14px rgba(18,61,78,.04)}.field-editor-form>label input,.field-editor-form>label select,.field-editor-form>label textarea{min-height:47px;border-color:#ccdee5;border-radius:10px;background:#f9fbfc}.field-editor-form>label textarea{min-height:105px}.field-editor-form>label input:focus,.field-editor-form>label select:focus,.field-editor-form>label textarea:focus{border-color:#2d93ad;outline:3px solid rgba(45,147,173,.14);background:#fff}.field-editor-form>label>small{color:#78909a;font-weight:550}.automatic-field-code{display:flex;min-height:47px;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border:1px dashed #a9ccd7;border-radius:10px;background:#eff8fa}.automatic-field-code strong{color:#256a80;font-size:13px}.automatic-field-code small{color:#75909b;font-weight:550}.field-type-guide{display:flex;gap:10px;align-items:center;padding:12px 14px;border:1px solid #c8e1e8;border-radius:14px;background:#f1fafc}.field-type-guide>span{display:grid;width:26px;height:26px;flex:0 0 26px;place-items:center;border-radius:50%;background:#71b8ca;color:#fff;font-family:serif;font-weight:900}.field-type-guide p{margin:0;color:#527481;font-size:13px;line-height:1.4}.field-conditional.hidden{display:none}.field-setting{justify-content:center}.field-setting>span{display:flex;gap:9px;align-items:center}.field-setting input[type=checkbox]{width:20px;min-height:20px;margin:0;accent-color:#167591}.field-editor-form>.form-actions{position:sticky;z-index:7;bottom:0;display:flex;justify-content:flex-end;margin:6px -28px 0;padding:17px 28px;border-top:1px solid #d5e4e9;background:rgba(255,255,255,.95);backdrop-filter:blur(10px)}.field-editor-form>.form-actions .danger{margin-left:auto}
@media(max-width:700px){.field-editor-modal{padding:8px}.field-editor-modal .modal-card{width:100%;max-height:97vh;border-radius:17px}.field-editor-modal .modal-card>.page-head{padding:18px;border-radius:17px 17px 0 0}.field-editor-modal .field-editor-form{grid-template-columns:1fr;padding:18px}.field-editor-modal .field-editor-form>.full{grid-column:auto}.field-editor-form>.form-actions{margin:4px -18px 0;padding:14px 18px;flex-wrap:wrap}.automatic-field-code{align-items:flex-start;flex-direction:column}}
.table-field-configurator{padding:17px;border:1px solid #bcdde6;border-radius:17px;background:linear-gradient(135deg,#edf8fb,#fff)}.table-field-configurator>header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:14px}.table-field-configurator>header strong{display:block;color:#20566a;font-size:17px}.table-field-configurator>header small{display:block;margin-top:3px;color:#6e8994}.table-column-builder{display:grid;gap:10px}.table-column-builder>article{display:grid;grid-template-columns:34px minmax(150px,1.2fr) minmax(130px,.8fr) minmax(170px,1fr) 112px 132px 40px;gap:9px;align-items:end;padding:12px;border:1px solid #d4e5ea;border-radius:13px;background:#fff;box-shadow:0 4px 12px rgba(18,62,78,.04)}.table-column-builder label{display:flex;gap:5px;flex-direction:column;color:#55737f;font-size:11px;font-weight:800}.table-column-builder input,.table-column-builder select,.table-column-builder textarea{min-height:39px;padding:8px;border-radius:9px}.table-column-builder textarea{min-height:62px}.table-column-number{display:grid;width:28px;height:28px;place-items:center;align-self:center;border-radius:8px;background:#dff1f5;color:#26768d;font-weight:850}.table-column-flag{align-self:center}.table-column-flag>span{display:flex;gap:6px;align-items:center}.table-column-flag input{width:18px;min-height:18px;margin:0;accent-color:#177792}.table-column-builder .danger{width:38px;height:38px;padding:0;align-self:center;border-radius:10px}.table-behaviour{display:grid;grid-template-columns:160px 190px 1fr;gap:12px;align-items:end;margin-top:14px;padding-top:14px;border-top:1px solid #cfe3e9}.table-behaviour label{display:flex;gap:6px;flex-direction:column;color:#496b78;font-size:12px;font-weight:800}.table-behaviour label>span{display:flex;gap:8px;align-items:center;min-height:44px}.table-behaviour input[type=checkbox]{width:19px;min-height:19px;margin:0}.record-table-field{grid-column:1/-1;min-width:0;padding:0;border:1px solid #cfe1e7;border-radius:15px;background:#fff;overflow:hidden}.record-table-field>header{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:15px 17px;border-bottom:1px solid #d7e6eb;background:linear-gradient(135deg,#f4fafc,#fff)}.record-table-field>header strong{display:block;color:#1d4b5d;font-size:16px}.record-table-field>header small{display:block;margin-top:3px;color:#708b96}.record-table-scroll{overflow:auto}.record-table-field table{width:100%;min-width:720px;border-collapse:separate;border-spacing:0}.record-table-field th,.record-table-field td{padding:9px;border-right:1px solid #e1eaed;border-bottom:1px solid #e1eaed;text-align:left}.record-table-field thead th{background:#f2f7f9;color:#4f6f7b;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.record-table-field tbody tr:hover{background:#f8fcfd}.record-table-field input,.record-table-field select,.record-table-field textarea{width:100%;min-width:110px;min-height:38px;padding:7px 9px;border:1px solid #cedfe5;border-radius:8px;background:#fff}.record-table-field textarea{min-height:56px}.record-table-field tfoot th{background:#eaf6f9;color:#205e73;font-weight:850}.record-table-field .table-row-actions{width:86px;white-space:nowrap}.record-table-field .table-row-actions button{width:32px;height:32px;margin-right:4px;padding:0;border-radius:8px}.record-table-field>.table-empty{margin:0;padding:18px;text-align:center}.table-field-summary{display:inline-flex;gap:4px;align-items:center;padding:5px 9px;border-radius:999px;background:#e9f5f8;color:#326a7d;font-size:12px}.table-field-summary strong{color:#155a72}
@media(max-width:1050px){.table-column-builder>article{grid-template-columns:32px 1fr 1fr 40px}.table-column-options,.table-column-flag{grid-column:span 2}.table-behaviour{grid-template-columns:1fr 1fr}.table-behaviour label:last-child{grid-column:1/-1}}@media(max-width:700px){.table-field-configurator>header{align-items:flex-start;flex-direction:column}.table-column-builder>article{grid-template-columns:30px 1fr 38px}.table-column-builder>article>label{grid-column:2}.table-column-builder .danger{grid-column:3;grid-row:1}.table-column-number{grid-column:1;grid-row:1}.table-behaviour{grid-template-columns:1fr}.table-behaviour label:last-child{grid-column:auto}.record-table-field>header{align-items:flex-start;flex-direction:column}}
.codex-process-button{margin-right:10px;border-color:#7d69d8!important;color:#5740b5!important;background:#f5f2ff!important}.badge.codex{background:#eee9ff;color:#5940b5}.codex-workspace{display:grid;grid-template-columns:290px minmax(0,1fr);height:calc(100vh - 155px);min-height:620px;border:1px solid #dce8ed;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 18px 50px rgba(17,52,65,.08)}.codex-threads{background:#f5f9fa;border-right:1px solid #dce8ed;padding:18px;overflow:auto}.codex-threads-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.codex-threads-head button{width:38px;height:38px;padding:0;border-radius:12px}.codex-thread{display:block;width:100%;text-align:left;border:1px solid transparent;background:transparent;border-radius:14px;padding:13px;margin-bottom:7px}.codex-thread:hover,.codex-thread.active{background:#fff;border-color:#d8e5ea;box-shadow:0 5px 14px rgba(20,60,75,.06)}.codex-thread strong,.codex-thread span{display:block}.codex-thread span{font-size:12px;color:#71858e;margin-top:5px}.codex-chat{display:flex;flex-direction:column;min-width:0;background:linear-gradient(180deg,#fbfdfe,#fff)}.codex-welcome{margin:auto;max-width:560px;text-align:center;padding:40px}.codex-mark{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 20px;border-radius:22px;background:linear-gradient(135deg,#6e5bd4,#2099ac);color:#fff;font-size:30px}.codex-welcome p{color:#647b85;line-height:1.6}.codex-welcome small{display:block;color:#78909a;margin-top:16px}.codex-chat-head{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid #e2ecef}.codex-chat-head strong,.codex-chat-head small{display:block}.codex-chat-head small{color:#758a93;margin-top:4px}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#30ad7b;margin-left:8px}.codex-chat-body{flex:1;overflow:auto;padding:24px}.codex-message{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;max-width:800px;margin:0 auto 20px}.codex-message>div{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#e9e4ff;color:#5d49bd;font-size:12px;font-weight:800}.codex-message.user>div{background:#daf0f4;color:#12677b}.codex-message p{margin:0;background:#f4f7f8;border-radius:4px 16px 16px 16px;padding:14px 17px;line-height:1.5;white-space:pre-wrap}.codex-message.user p{background:#eaf6f8}.codex-message time{grid-column:2;color:#91a2a9;font-size:11px}.codex-spec{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:16px 24px;background:#f7fafb;border-top:1px solid #e1ebee}.codex-spec>div{flex:1}.codex-spec label{max-width:420px}.codex-spec h3{margin:14px 0 5px}.codex-spec p{margin:0;color:#617983}.spec-stats{display:flex;gap:10px;margin-top:12px}.spec-stats span{background:#fff;border:1px solid #dce7eb;border-radius:12px;padding:9px 13px;font-weight:800}.spec-stats small{display:block;font-weight:400;color:#71858e}.codex-composer{position:relative;padding:18px 90px 28px 24px;border-top:1px solid #e1ebee}.codex-composer textarea{resize:none;padding-right:20px}.codex-composer button{position:absolute;right:24px;top:18px;height:52px}.codex-composer small{display:block;color:#82959d;margin-top:7px}@media(max-width:900px){.codex-workspace{grid-template-columns:1fr;height:auto}.codex-threads{display:none}.codex-chat{min-height:700px}.codex-spec{align-items:stretch;flex-direction:column}}
.layout-block-drag-handle{cursor:grab}.layout-block-drag-handle:active{cursor:grabbing}.layout-block.block-dragging{opacity:.48;transform:scale(.99)}.layout-block.block-drag-over{outline:2px dashed #2591ad;outline-offset:5px}.layout-block.is-hidden{border-style:dashed;background:#f4f7f8}.layout-block.is-hidden .layout-fields{opacity:.62}.layout-block-visibility{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#e7f6ee;color:#23724a;font-size:11px;font-weight:800;text-transform:uppercase}.layout-block.is-hidden .layout-block-visibility{background:#eef1f3;color:#677a82}.layout-block header>.layout-block-meta{margin-left:8px}.block-visibility-setting{grid-column:1/-1;padding:14px;border:1px solid #d9e6ea;border-radius:14px;background:#f7fafb}.block-visibility-setting>span{display:flex;align-items:center;gap:10px}.block-visibility-setting input{width:20px!important;min-height:20px!important}
.relation-display-field{display:grid;gap:6px;margin-top:12px;padding:13px;border:1px solid #d6e5ea;border-radius:13px;background:#f6fafb;color:#244552;font-weight:700}.relation-display-field small{font-weight:400;color:#6c8189}
.quote-product-nav>button:first-child{min-height:40px;height:auto!important;line-height:1.2;white-space:normal}.quote-product-nav>.subnav button{min-height:34px!important;height:auto!important;padding:7px 9px!important;line-height:1.25;text-align:left;white-space:normal}.sidebar-collapsed .quote-product-nav.compact-open>.subnav{width:340px;max-height:min(470px,calc(100vh - 32px))}.sidebar-collapsed .quote-product-nav.compact-open:before{width:314px;white-space:nowrap}.sidebar-collapsed .quote-product-nav.compact-open>.subnav button{min-height:42px!important}
.table-column-relation{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px;border:1px solid #cfe3e9;border-radius:11px;background:#f2f9fb}.table-column-relation small{grid-column:1/-1;color:#69828c;font-weight:500}.table-column-builder>article:has(.table-column-relation:not(.hidden)){grid-template-columns:34px minmax(150px,1fr) minmax(150px,.8fr) minmax(320px,1.7fr) 112px 132px 40px}@media(max-width:1050px){.table-column-relation{grid-column:1/-1}}@media(max-width:700px){.table-column-relation{grid-template-columns:1fr}.table-column-relation small{grid-column:auto}}
.ai-settings-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;padding:26px 28px;border:1px solid #cfe3e9;border-radius:24px;background:radial-gradient(circle at 88% 20%,#7bd9d933,transparent 27%),linear-gradient(135deg,#f8fdfe,#edf8fa 62%,#f6f2ff);box-shadow:0 14px 38px rgba(17,67,84,.08)}.ai-settings-hero h1{margin:4px 0 7px;font-size:34px}.ai-settings-hero p{max-width:760px;margin:0;color:#577580}.ai-hero-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:18px;background:linear-gradient(135deg,#126d86,#3a9ca3 60%,#7d6bc4);box-shadow:0 10px 24px #195e7738;color:#fff;font-size:28px}.ai-connection-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#f7eadb;color:#885417;font-weight:800;white-space:nowrap}.ai-connection-pill i{width:9px;height:9px;border-radius:50%;background:#df9634}.ai-connection-pill.ready{background:#e4f7ec;color:#167145}.ai-connection-pill.ready i{background:#24a36a;box-shadow:0 0 0 4px #24a36a22}.ai-connection-pill.paused{background:#fff5dc;color:#846013}.ai-setup-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.ai-setup-steps article{display:flex;align-items:center;gap:12px;padding:15px 17px;border:1px solid #dce7eb;border-radius:16px;background:#fff;color:#69808a}.ai-setup-steps article b{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#eef4f6;color:#58727d}.ai-setup-steps article div{display:grid;gap:2px}.ai-setup-steps article strong{color:#273f49}.ai-setup-steps article span{font-size:12px}.ai-setup-steps article.current{border-color:#7dc6d2;background:#f0fafb}.ai-setup-steps article.current b{background:#167995;color:#fff}.ai-setup-steps article.done b{position:relative;background:#dff5e8;color:#1c7b51;font-size:0}.ai-setup-steps article.done b::after{content:'✓';font-size:15px}.ai-guided-settings{display:grid;gap:16px}.ai-settings-card{padding:23px;border:1px solid #d9e6ea;border-radius:20px;background:#fff;box-shadow:0 8px 25px rgba(15,45,58,.045)}.ai-settings-card.primary-card{border-color:#bcdde4}.ai-card-heading{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:19px}.ai-card-heading h2{margin:5px 0}.ai-card-heading p{margin:0;color:#68808a}.ai-master-switch{display:grid!important;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;min-width:210px;padding:12px 15px;border:1px solid #d6e5e9;border-radius:14px;background:#f7fbfc}.ai-master-switch input{position:absolute;opacity:0;pointer-events:none}.ai-master-switch>span{grid-row:1/3;width:43px;height:24px;border-radius:999px;background:#c4d1d6;position:relative;transition:.2s}.ai-master-switch>span::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #0002;transition:.2s}.ai-master-switch input:checked+span{background:#18809a}.ai-master-switch input:checked+span::after{transform:translateX(19px)}.ai-master-switch b{font-size:13px}.ai-basic-grid,.ai-context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ai-basic-grid label,.ai-context-grid label{display:grid;gap:6px;font-weight:750}.ai-basic-grid small,.ai-context-grid small,.ai-advanced-settings small{color:#718891;font-weight:500}.ai-context-grid .wide{grid-column:1/-1}.ai-security-note{display:flex;gap:12px;align-items:center;margin-top:16px;padding:13px 15px;border-radius:14px;background:#eef9f5;color:#286850}.ai-security-note>span{font-size:23px}.ai-security-note p{margin:3px 0 0;font-size:12px}.ai-main-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:17px}.ai-test-button{border-color:#1c7c96!important;color:#155e75!important}.ai-advanced-settings{border:1px solid #d9e6ea;border-radius:18px;background:#fff;overflow:hidden}.ai-advanced-settings summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 22px;cursor:pointer;list-style:none}.ai-advanced-settings summary::-webkit-details-marker{display:none}.ai-advanced-settings summary span{display:grid;gap:3px}.ai-advanced-settings summary i{font-style:normal;font-size:20px;transition:.2s}.ai-advanced-settings[open] summary{border-bottom:1px solid #e3ecef;background:#f7fafb}.ai-advanced-settings[open] summary i{transform:rotate(180deg)}.ai-advanced-settings>.settings-grid{padding:22px}.ai-inline-check{display:flex!important;align-items:center!important;gap:11px;padding:12px;border:1px solid #dce7eb;border-radius:12px}.ai-inline-check input{width:auto;min-height:auto}.ai-inline-check span{display:grid}.ai-danger-zone{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:15px 18px;border:1px solid #f0d4d1;border-radius:16px;background:#fffafa}.ai-danger-zone div{display:grid;gap:3px}.ai-danger-zone span{font-size:12px;color:#7e7170}@media(max-width:820px){.ai-settings-hero{grid-template-columns:auto 1fr}.ai-connection-pill{grid-column:1/-1;width:max-content}.ai-setup-steps,.ai-basic-grid,.ai-context-grid{grid-template-columns:1fr}.ai-context-grid .wide{grid-column:auto}.ai-card-heading{display:grid}.ai-master-switch{min-width:0}.ai-main-actions,.ai-danger-zone{align-items:stretch;flex-direction:column}.ai-main-actions button{width:100%}}
.process-inspector {
  display: none;
}
.process-inspector.open {
  display: block;
  position: fixed;
  z-index: 1200;
  inset: 5vh 4vw;
  width: auto;
  max-width: none;
  max-height: 90vh;
  overflow: auto;
  padding: 24px;
  border: 1px solid #bdd4dc;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 24px 80px rgba(10, 42, 54, .32);
}
.process-inspector.open::before {
  content: "";
  position: fixed;
  z-index: -1;
  inset: 0;
  background: rgba(8, 31, 40, .48);
}
.process-inspector.open > header {
  position: sticky;
  z-index: 2;
  top: -24px;
  margin: -24px -24px 20px;
  padding: 20px 24px;
  background: #fff;
  border-bottom: 1px solid #d8e5e9;
}
.process-inspector-close { margin-left: auto; }
.process-inspector.open .inspector-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.process-inspector.open .inspector-form > section,
.process-inspector.open .inspector-form > fieldset,
.process-inspector.open .inspector-form > p { grid-column: 1 / -1; }
@media (max-width: 800px) {
  .process-inspector.open { inset: 2vh 12px; padding: 18px; }
  .process-inspector.open .inspector-form { grid-template-columns: 1fr; }
}
.list-coloring-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:20px;align-items:start}.list-coloring-form,.list-coloring-preview{padding:22px}.list-coloring-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.list-coloring-controls label{margin:0}.list-coloring-controls input[type="range"]{width:100%;margin-top:12px}.list-coloring-controls output{float:right;color:#176986;font-weight:800}.list-coloring-active{grid-column:1/-1;padding:13px 15px;border:1px solid #d9e7ec;border-radius:12px;background:#f7fbfc}.list-coloring-active span{display:flex;align-items:center;gap:9px;font-weight:800}.list-coloring-active small{display:block;margin-top:5px;color:#6c8490}.list-color-values{margin-top:22px}.list-color-value{display:grid;grid-template-columns:minmax(130px,1fr) 52px 110px;gap:12px;align-items:center;margin:0;padding:10px 0;border-bottom:1px solid #e5eef1}.list-color-value>span{font-weight:750}.list-color-value input[type="color"]{width:48px;height:38px;padding:2px;border:1px solid #cddde3;border-radius:9px;background:#fff;cursor:pointer}.list-color-value button[data-cleared]{opacity:.62;background:#f4f7f8}.list-coloring-preview{position:sticky;top:20px}.list-coloring-preview table{width:100%;margin-top:16px;border-collapse:separate;border-spacing:0}.list-coloring-preview th,.list-coloring-preview td{padding:11px;border-bottom:1px solid #dce8ec;text-align:left}.list-coloring-preview tr,.list-coloring-preview td{transition:background-color .18s ease,box-shadow .18s ease}.list-coloring-note{display:grid;gap:4px;margin-top:12px;padding:14px;border-radius:12px;background:#eff8f5;color:#286452}.module-table tbody tr.list-coloring-full-row>td{background-color:transparent}.module-table tbody td.list-coloring-field{font-weight:700}.module-table tbody tr[class*="list-coloring-"]:hover>td{background-color:rgba(255,255,255,.2)}.kanban-card[class*="list-coloring-"]{background-color:#fff}.kanban-card .kanban-color-value{display:block;width:100%;padding:6px 8px;border-radius:7px;font-size:11px;font-weight:750;color:#284c59}@media(max-width:980px){.list-coloring-layout{grid-template-columns:1fr}.list-coloring-preview{position:static}}@media(max-width:680px){.list-coloring-controls{grid-template-columns:1fr}.list-coloring-active{grid-column:auto}.list-color-value{grid-template-columns:1fr 48px}.list-color-value button{grid-column:1/-1}}
