/* EVOLVIAMO v6 extensions. The complete RIGON design system remains in styles.css. */
:root {
  --evo-focus: #2a8ec6;
  --evo-sidebar-width: 286px;
  --evo-header-height: 112px;
}
html { scroll-behavior: smooth; }
body { min-width: 320px; }
button, input, select, textarea { font: inherit; }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, [tabindex]:focus-visible {
  outline: 3px solid rgba(42,142,198,.32); outline-offset: 2px;
}
textarea {
  width: 100%; min-height: 104px; resize: vertical; border: 1px solid var(--line); border-radius: 14px;
  background: #fff; padding: 12px 14px; color: var(--ink); outline: none;
}
textarea:focus { border-color:#91b7d8; box-shadow:0 0 0 4px rgba(17,91,143,.10); }
[hidden] { display:none !important; }
.evo-skip-link { position:fixed; left:12px; top:-80px; z-index:9999; padding:10px 14px; background:#fff; color:var(--primary); border-radius:10px; box-shadow:var(--shadow); }
.evo-skip-link:focus { top:12px; }
.evo-sidebar-footer { margin-top:auto; display:flex; gap:10px; align-items:center; padding:14px; border:1px solid rgba(255,255,255,.12); border-radius:16px; color:#fff; }
.evo-sidebar-footer strong,.evo-sidebar-footer small { display:block; }
.evo-sidebar-footer small { color:rgba(255,255,255,.62); margin-top:2px; }
.evo-sidebar-footer .status-dot { width:10px; height:10px; border-radius:50%; background:#28c78d; box-shadow:0 0 0 5px rgba(40,199,141,.12); }
.evo-sidebar-user { display:flex; gap:10px; align-items:center; margin-top:12px; padding:12px 4px 0; color:#fff; }
.evo-sidebar-user-avatar { width:36px; height:36px; border-radius:12px; display:grid; place-items:center; background:rgba(255,255,255,.12); font-weight:900; }
.evo-sidebar-user strong,.evo-sidebar-user span { display:block; }
.evo-sidebar-user span { color:rgba(255,255,255,.6); font-size:11px; }
.evo-command-bar { align-items:end; }
.evo-command-bar .bc-primary-button,.evo-command-bar .bc-secondary-button { white-space:nowrap; }
.evo-mobile-topbar { display:none; }
.evo-page-stack { display:grid; gap:20px; }
.evo-metrics-row { grid-template-columns:repeat(4,minmax(0,1fr)); }
.evo-metric-action { cursor:pointer; text-align:left; }
.evo-metric-action:hover { transform:translateY(-1px); box-shadow:0 18px 42px rgba(16,32,51,.09); }
.evo-table-toolbar { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:0 0 16px; flex-wrap:wrap; }
.evo-toolbar-left,.evo-toolbar-right { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.evo-search { min-width:280px; padding-left:40px; background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") no-repeat 13px center; }
.evo-filter-chip { border:1px solid var(--line); background:#fff; color:var(--ink); border-radius:999px; min-height:38px; padding:0 13px; font-weight:800; }
.evo-filter-chip.active { background:var(--primary); color:#fff; border-color:var(--primary); }
.evo-table-meta { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:14px; color:var(--muted); font-size:12px; font-weight:800; }
.evo-pagination { display:flex; gap:6px; align-items:center; }
.evo-pagination button { min-width:34px; height:34px; border-radius:10px; border:1px solid var(--line); background:#fff; color:var(--ink); font-weight:900; }
.evo-pagination button.active { background:var(--primary); color:#fff; border-color:var(--primary); }
.evo-pagination button:disabled { opacity:.45; cursor:not-allowed; }
.evo-table-row { cursor:pointer; }
.evo-table-row:hover { background:#f5f9fd; }
.evo-table-checkbox { width:18px; height:18px; accent-color:var(--primary-2); }
.evo-cell-title { display:flex; gap:11px; align-items:center; min-width:210px; }
.evo-avatar { width:38px; height:38px; border-radius:13px; flex:0 0 auto; display:grid; place-items:center; background:var(--soft-blue); color:var(--primary-2); font-weight:950; letter-spacing:-.04em; }
.evo-cell-title strong,.evo-cell-title span,.evo-cell-stack strong,.evo-cell-stack span { display:block; }
.evo-cell-title span,.evo-cell-stack span { color:var(--muted); font-size:12px; margin-top:3px; }
.evo-next-action { max-width:300px; }
.evo-next-action strong { display:block; }
.evo-next-action span { display:block; color:var(--muted); font-size:12px; margin-top:3px; }
.evo-overdue { color:var(--danger)!important; }
.evo-warning { color:var(--warning)!important; }
.evo-good { color:var(--accent)!important; }
.evo-score { display:flex; align-items:center; gap:8px; min-width:100px; }
.evo-score i { height:7px; flex:1; border-radius:99px; background:#e5edf4; overflow:hidden; }
.evo-score b { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--warning),var(--accent)); }
.evo-empty-state,.evo-error-state { padding:48px 24px; text-align:center; display:grid; justify-items:center; gap:10px; color:var(--muted); }
.evo-empty-icon { width:52px; height:52px; display:grid; place-items:center; border-radius:18px; background:var(--soft-blue); color:var(--primary-2); font-size:24px; }
.evo-empty-state h3,.evo-error-state h3 { margin:4px 0 0; color:var(--ink); }
.evo-empty-state p,.evo-error-state p { margin:0; max-width:520px; line-height:1.5; }
.evo-skeleton { border-radius:12px; background:linear-gradient(90deg,#eef3f8 25%,#f8fafc 37%,#eef3f8 63%); background-size:400% 100%; animation:evo-shimmer 1.35s infinite; }
@keyframes evo-shimmer { 0%{background-position:100% 0}100%{background-position:0 0} }
.evo-kpi-definition { position:relative; }
.evo-kpi-definition button { border:0; background:transparent; color:var(--muted); font-weight:900; }
.evo-tooltip { position:absolute; z-index:80; top:34px; right:0; width:260px; background:#071b2f; color:#fff; border-radius:14px; padding:12px; box-shadow:0 18px 44px rgba(0,0,0,.24); font-size:12px; line-height:1.45; }
.evo-priority-button { width:100%; border:0; text-align:left; }
.evo-priority-button:focus-visible { border-radius:18px; }
.evo-inline-actions { display:flex; gap:8px; align-items:center; }
.evo-icon-button { width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--line); background:#fff; color:var(--primary); border-radius:12px; }
.evo-icon-button:hover { background:var(--soft-blue); }
.evo-drawer-backdrop { position:fixed; inset:0; z-index:400; background:rgba(7,27,47,.42); backdrop-filter:blur(3px); display:flex; justify-content:flex-end; }
.evo-drawer { width:min(880px,94vw); height:100%; overflow:auto; background:#fff; box-shadow:-24px 0 70px rgba(7,27,47,.24); animation:evo-slide .2s ease; }
@keyframes evo-slide { from{transform:translateX(32px);opacity:.4}to{transform:none;opacity:1} }
.evo-drawer .bc-drawer-header { position:sticky; top:0; z-index:8; background:#fff; }
.evo-drawer-footer { position:sticky; bottom:0; background:rgba(255,255,255,.96); backdrop-filter:blur(10px); border-top:1px solid var(--line); padding:14px 22px; display:flex; justify-content:space-between; gap:12px; z-index:7; }
.evo-form { display:grid; gap:18px; }
.evo-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.evo-form-grid.cols-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.evo-form label { display:grid; gap:7px; font-size:12px; font-weight:900; color:var(--ink); }
.evo-form label > span { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.evo-form .full { grid-column:1/-1; }
.evo-required { color:var(--danger); }
.evo-help { color:var(--muted); font-size:11px; font-weight:700; }
.evo-field-error { color:var(--danger); font-size:11px; font-weight:800; }
.evo-form input[aria-invalid="true"],.evo-form select[aria-invalid="true"],.evo-form textarea[aria-invalid="true"] { border-color:var(--danger); box-shadow:0 0 0 3px rgba(195,58,58,.09); }
.evo-checkbox-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.evo-check { display:flex!important; grid-template-columns:none!important; flex-direction:row!important; align-items:center; gap:8px!important; min-height:40px; padding:8px 10px; border:1px solid var(--line); border-radius:12px; }
.evo-check input { width:17px; height:17px; accent-color:var(--primary-2); }
.evo-person-token-list { display:flex; flex-wrap:wrap; gap:7px; }
.evo-person-token { display:inline-flex; align-items:center; gap:7px; padding:7px 10px; border-radius:999px; background:var(--soft-blue); color:var(--primary); font-size:12px; font-weight:850; }
.evo-detail-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.evo-detail-card { border:1px solid var(--line); border-radius:16px; padding:14px; background:var(--surface-strong); }
.evo-detail-card span,.evo-detail-card strong,.evo-detail-card small { display:block; }
.evo-detail-card span { color:var(--muted); font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.05em; }
.evo-detail-card strong { margin-top:6px; }
.evo-detail-card small { color:var(--muted); margin-top:5px; line-height:1.4; }
.evo-timeline { display:grid; gap:0; }
.evo-timeline-item { position:relative; padding:0 0 18px 30px; }
.evo-timeline-item:before { content:""; position:absolute; left:8px; top:8px; bottom:-8px; width:2px; background:var(--line); }
.evo-timeline-item:last-child:before { display:none; }
.evo-timeline-item:after { content:""; position:absolute; left:2px; top:5px; width:14px; height:14px; border-radius:50%; background:var(--primary-2); border:3px solid #fff; box-shadow:0 0 0 2px var(--soft-blue); }
.evo-timeline-item strong,.evo-timeline-item span,.evo-timeline-item p { display:block; margin:0; }
.evo-timeline-item span { color:var(--muted); font-size:12px; margin-top:3px; }
.evo-timeline-item p { margin-top:8px; line-height:1.45; }
.evo-audit-entry { display:grid; grid-template-columns:150px 170px 1fr; gap:14px; padding:13px 0; border-bottom:1px solid var(--line); }
.evo-audit-entry:last-child { border-bottom:0; }
.evo-audit-entry span { color:var(--muted); font-size:12px; }
.evo-bulk-bar { position:sticky; bottom:16px; z-index:30; margin:12px auto 0; width:fit-content; display:flex; align-items:center; gap:12px; padding:10px 12px; border-radius:16px; background:#071b2f; color:#fff; box-shadow:0 18px 55px rgba(7,27,47,.32); }
.evo-bulk-bar button { height:36px; border-radius:10px; border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.1); color:#fff; padding:0 12px; font-weight:850; }
.evo-modal-backdrop { position:fixed; inset:0; z-index:600; display:grid; place-items:center; padding:20px; background:rgba(7,27,47,.5); backdrop-filter:blur(4px); }
.evo-modal { width:min(560px,100%); max-height:90vh; overflow:auto; background:#fff; border-radius:24px; box-shadow:0 32px 100px rgba(7,27,47,.32); }
.evo-modal-head,.evo-modal-body,.evo-modal-footer { padding:18px 22px; }
.evo-modal-head { display:flex; align-items:flex-start; justify-content:space-between; border-bottom:1px solid var(--line); }
.evo-modal-head h2 { margin:0; }
.evo-modal-footer { display:flex; justify-content:flex-end; gap:10px; border-top:1px solid var(--line); }
#toast-root { position:fixed; z-index:900; right:18px; top:18px; display:grid; gap:10px; width:min(390px,calc(100vw - 36px)); }
.evo-toast { background:#fff; border:1px solid var(--line); border-left:4px solid var(--primary-2); border-radius:15px; padding:13px 15px; box-shadow:0 18px 50px rgba(7,27,47,.18); display:grid; grid-template-columns:1fr auto; gap:10px; animation:evo-toast-in .2s ease; }
.evo-toast.success { border-left-color:var(--accent); }.evo-toast.error { border-left-color:var(--danger); }.evo-toast.warning { border-left-color:var(--warning); }
.evo-toast strong,.evo-toast span { display:block; }.evo-toast span { color:var(--muted); font-size:12px; margin-top:3px; line-height:1.4; }
.evo-toast button { border:0; background:transparent; font-size:20px; color:var(--muted); }
@keyframes evo-toast-in { from{transform:translateY(-8px);opacity:0}to{transform:none;opacity:1} }
.evo-login-security { margin-top:14px; color:var(--muted); font-size:11px; line-height:1.45; }
.evo-network-banner { position:sticky; top:0; z-index:60; padding:9px 16px; text-align:center; background:var(--warning-soft); color:#7a4d00; font-weight:850; border-bottom:1px solid #f0d79f; }
.evo-role-readonly { padding:10px 14px; border-radius:12px; background:var(--warning-soft); color:#7a4d00; font-weight:850; font-size:12px; }
.evo-data-quality-list { display:grid; gap:10px; }
.evo-data-quality-row { display:grid; grid-template-columns:1fr 90px; align-items:center; gap:12px; }
.evo-data-quality-row span { color:var(--muted); font-size:12px; }
.evo-data-quality-row i { height:7px; border-radius:99px; background:#e8eef4; overflow:hidden; }
.evo-data-quality-row b { display:block; height:100%; background:linear-gradient(90deg,var(--warning),var(--accent)); }
.evo-mobile-cards { display:none; }
.evo-print-only { display:none; }
@media (max-width:1366px) {
  .bc-sidebar { width:258px; }
  .app-shell { grid-template-columns:258px 1fr; }
  .main-content { padding:22px; }
  .bc-page-header { gap:14px; }
  .bc-page-title h1 { font-size:31px; }
  .bc-command-bar label:nth-of-type(n+3) { display:none; }
  .evo-metrics-row { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .home-kpi-strip { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:1024px) {
  .app-shell { display:block; }
  .bc-sidebar { position:fixed; z-index:200; left:0; top:0; transform:translateX(-105%); transition:.2s ease; width:min(300px,88vw); }
  body.evo-menu-open .bc-sidebar { transform:none; }
  .evo-mobile-topbar { position:sticky; top:0; z-index:150; height:62px; display:flex; align-items:center; justify-content:space-between; padding:0 16px; background:#071b2f; color:#fff; box-shadow:0 8px 24px rgba(7,27,47,.2); }
  .evo-mobile-topbar button { border:0; background:rgba(255,255,255,.12); color:#fff; width:40px; height:40px; border-radius:12px; }
  .main-content { padding:18px; }
  .bc-page-header { display:grid; }
  .bc-command-bar { justify-content:flex-start; }
  .home-main-grid,.home-lower-grid,.dashboard-grid { grid-template-columns:1fr; }
  .evo-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:768px) {
  .main-content { padding:14px; }
  .bc-page-title h1 { font-size:28px; }
  .bc-page-title > span { font-size:13px; }
  .bc-command-bar { width:100%; display:grid; grid-template-columns:1fr 1fr; }
  .bc-command-bar label { min-width:0!important; }
  .bc-command-bar label select { width:100%; }
  .bc-command-bar button { width:100%; }
  .home-hero-card { grid-template-columns:1fr; padding:22px; }
  .home-kpi-strip,.evo-metrics-row { grid-template-columns:1fr 1fr; }
  .evo-table-toolbar { align-items:stretch; }
  .evo-toolbar-left,.evo-toolbar-right { width:100%; }
  .evo-search { min-width:0; width:100%; }
  .bc-table-shell { display:none; }
  .evo-mobile-cards { display:grid; gap:10px; }
  .evo-mobile-card { border:1px solid var(--line); border-radius:18px; padding:14px; background:#fff; box-shadow:0 10px 28px rgba(16,32,51,.05); }
  .evo-mobile-card-head { display:flex; justify-content:space-between; gap:10px; }
  .evo-mobile-card h3 { margin:0; font-size:16px; }
  .evo-mobile-card p { margin:6px 0 0; color:var(--muted); font-size:12px; line-height:1.45; }
  .evo-mobile-card-meta { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:12px; }
  .evo-mobile-card-meta div { background:var(--surface-strong); border-radius:12px; padding:9px; }
  .evo-mobile-card-meta span,.evo-mobile-card-meta strong { display:block; }
  .evo-mobile-card-meta span { color:var(--muted); font-size:10px; text-transform:uppercase; font-weight:850; }
  .evo-form-grid,.evo-form-grid.cols-3,.evo-detail-grid { grid-template-columns:1fr; }
  .evo-checkbox-grid { grid-template-columns:1fr; }
  .evo-drawer { width:100%; }
  .evo-drawer .bc-drawer-header { padding:16px; }
  .bc-drawer-tabs { overflow-x:auto; white-space:nowrap; }
  .evo-audit-entry { grid-template-columns:1fr; gap:4px; }
}
@media (max-width:480px) {
  .home-kpi-strip,.evo-metrics-row { grid-template-columns:1fr; }
  .bc-command-bar { grid-template-columns:1fr; }
  .home-hero-badges { grid-template-columns:1fr 1fr; }
  .home-hero-badges .hero-mini-badge:last-child { grid-column:1/-1; }
  .evo-drawer-footer { flex-direction:column-reverse; }
  .evo-drawer-footer > div,.evo-drawer-footer button { width:100%; }
  .evo-modal-footer { flex-direction:column-reverse; }
  .evo-modal-footer button { width:100%; }
}
@media print {
  .bc-sidebar,.bc-command-bar,.evo-mobile-topbar,.evo-drawer-backdrop,#toast-root { display:none!important; }
  .app-shell { display:block; }.main-content{padding:0}.evo-print-only{display:block}.bc-panel{box-shadow:none!important;break-inside:avoid}
}

/* =========================================================
   EVOLVIAMO v7 — Readability and relationship workspace
   ========================================================= */
:root {
  --evo-font: "Segoe UI Variable Text", "Aptos", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --evo-bg: #f3f6f9;
  --evo-panel: #ffffff;
  --evo-text: #162536;
  --evo-muted: #667789;
  --evo-border: #dfe7ee;
  --evo-blue: #115b8f;
  --evo-navy: #102c46;
  --evo-soft-blue: #eef5fb;
  --evo-radius: 14px;
  --evo-shadow: 0 8px 28px rgba(16, 44, 70, .065);
}
html { font-size: 16px; }
body {
  font-family: var(--evo-font) !important;
  font-size: 15px;
  line-height: 1.5;
  color: var(--evo-text);
  background: var(--evo-bg) !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
button, input, select, textarea { font-family: var(--evo-font) !important; }
strong, b { font-weight: 650; }

/* Shell and navigation */
.app-shell { grid-template-columns: 248px minmax(0,1fr) !important; }
.bc-sidebar {
  width: 248px !important;
  padding: 22px 16px 18px !important;
  background: #102a43 !important;
  border-right: 0 !important;
}
.bc-sidebar-brand { padding: 0 8px 22px !important; }
.bc-sidebar-brand strong { font-size: 17px !important; font-weight: 700 !important; letter-spacing: .055em !important; }
.bc-sidebar-brand span { font-size: 12px !important; line-height: 1.4; }
.bc-sidebar-nav { gap: 5px !important; }
.bc-sidebar-nav button,
.bc-sidebar-nav .bc-nav-item {
  min-height: 46px !important;
  padding: 0 12px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  font-weight: 550 !important;
  letter-spacing: 0 !important;
}
.bc-sidebar-nav svg { width: 19px; height: 19px; stroke-width: 1.8; }
.bc-sidebar-footer { border-radius: 12px !important; padding: 13px !important; }
.bc-sidebar-user span { font-size: 12px; }
.main-content { padding: 26px 30px 40px !important; max-width: 1900px; width: 100%; margin: 0 auto; }

/* Page hierarchy */
.bc-page-header { align-items: center !important; margin-bottom: 22px !important; gap: 20px !important; }
.bc-page-title { gap: 3px !important; }
.bc-page-title p { font-size: 11px !important; font-weight: 650 !important; letter-spacing: .075em !important; }
.bc-page-title h1 { font-size: clamp(28px, 2.1vw, 34px) !important; line-height: 1.15 !important; font-weight: 680 !important; letter-spacing: -.035em !important; }
.bc-page-title > span { display:block; max-width: 760px; margin-top: 5px; font-size: 14px !important; line-height: 1.5; color: var(--evo-muted) !important; }
.bc-command-bar { gap: 9px !important; align-items:center !important; }
.bc-command-bar label { font-size: 12px !important; font-weight: 600 !important; color: var(--evo-muted); }
.bc-primary-button, .bc-secondary-button,
.primary-button, .secondary-button {
  min-height: 42px !important;
  height: auto !important;
  padding: 9px 15px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  font-weight: 620 !important;
  box-shadow: none !important;
  letter-spacing: 0 !important;
}
.bc-primary-button { background: var(--evo-blue) !important; }
.bc-primary-button:hover { background: #0d4c79 !important; transform: none !important; }
.bc-secondary-button:hover { background: #f5f8fb !important; transform: none !important; }

/* Panels and metrics */
.evo-page-stack { gap: 18px; }
.bc-panel,
.bc-kpi-card,
.kpi-card,
.evo-mobile-card {
  background: var(--evo-panel) !important;
  border: 1px solid var(--evo-border) !important;
  border-radius: var(--evo-radius) !important;
  box-shadow: var(--evo-shadow) !important;
}
.bc-panel { padding: 20px !important; }
.bc-panel-header { margin-bottom: 16px !important; }
.bc-panel-header p { font-size: 11px !important; font-weight: 650 !important; letter-spacing:.07em !important; }
.bc-panel-header h2 { font-size: 20px !important; line-height:1.25; font-weight: 660 !important; letter-spacing:-.025em !important; }
.bc-panel-header span, .bc-panel-description { font-size: 13px !important; line-height:1.5; color:var(--evo-muted) !important; font-weight: 430 !important; }
.evo-metrics-row { gap: 12px !important; }
.evo-readable-metrics .bc-kpi-card,
.evo-readable-metrics .kpi-card { min-height: 118px !important; padding: 17px !important; }
.bc-kpi-card span, .kpi-topline span { font-size: 11px !important; font-weight: 650 !important; letter-spacing:.065em !important; }
.bc-kpi-card strong, .kpi-card > strong { font-size: 30px !important; font-weight: 690 !important; letter-spacing:-.035em !important; }
.bc-kpi-card small, .kpi-footer, .evo-kpi-definition { font-size: 12px !important; line-height:1.4; font-weight:450 !important; }

/* Unified organization status navigation */
.evo-status-tabs {
  display:flex;
  align-items:center;
  gap:7px;
  overflow-x:auto;
  padding: 2px 1px 13px;
  margin-bottom: 4px;
  scrollbar-width: thin;
}
.evo-status-tab {
  flex: 0 0 auto;
  min-height: 38px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  border:1px solid var(--evo-border);
  border-radius:999px;
  padding: 7px 12px;
  color:var(--evo-text);
  background:#fff;
  font-size:13px;
  font-weight:560;
}
.evo-status-tab b {
  min-width:22px;
  height:22px;
  display:grid;
  place-items:center;
  padding:0 6px;
  border-radius:999px;
  background:#edf2f6;
  color:var(--evo-muted);
  font-size:11px;
  font-weight:650;
}
.evo-status-tab:hover { background:#f7fafc; }
.evo-status-tab.active { background:var(--evo-navy); color:#fff; border-color:var(--evo-navy); }
.evo-status-tab.active b { background:rgba(255,255,255,.17); color:#fff; }

/* Filters */
.evo-table-toolbar-readable { padding: 4px 0 15px !important; border-bottom:1px solid #edf1f4; margin-bottom:15px; }
.evo-inline-filter { display:grid; gap:5px; min-width:160px; }
.evo-inline-filter > span { font-size:11px; font-weight:600; color:var(--evo-muted); }
input, select, textarea {
  border-color: var(--evo-border) !important;
  border-radius: 10px !important;
  color: var(--evo-text) !important;
  background: #fff !important;
  font-size: 14px !important;
}
input, select { min-height: 42px !important; height:42px !important; padding:0 12px !important; }
textarea { min-height: 112px; padding: 11px 12px !important; line-height:1.5; }
input::placeholder, textarea::placeholder { color:#91a0ad; }
.evo-search { min-width: 330px; padding-left: 40px !important; }

/* Tables */
.bc-table-shell { border-radius: 11px !important; border-color: var(--evo-border) !important; overflow:auto; }
.bc-table { table-layout:auto; }
.bc-table th {
  padding: 11px 13px !important;
  background:#f7f9fb !important;
  color:#5f7182 !important;
  font-size:11px !important;
  line-height:1.25;
  font-weight:650 !important;
  letter-spacing:.045em !important;
  white-space:nowrap;
}
.bc-table td {
  padding: 13px !important;
  font-size:14px !important;
  line-height:1.4;
  vertical-align:middle;
  color:var(--evo-text);
}
.bc-table tbody tr:hover { background:#f6f9fc !important; }
.evo-cell-title { min-width:240px; gap:12px; }
.evo-cell-title strong, .evo-cell-stack strong, .evo-next-action strong { font-size:14px; font-weight:630; line-height:1.3; }
.evo-cell-title span, .evo-cell-stack span, .evo-next-action span, .bc-table td > span {
  margin-top:3px;
  color:var(--evo-muted);
  font-size:12px !important;
  line-height:1.35;
}
.evo-avatar { width:40px; height:40px; border-radius:10px; font-size:13px; font-weight:680; background:var(--evo-soft-blue); }
.evo-icon-button { width:36px; height:36px; border-radius:9px; font-size:20px; }
.evo-table-meta { font-size:12px; font-weight:500; }

/* Badges */
.bc-badge, [class*="status-badge"], .evo-person-token {
  border-radius:999px !important;
  font-size:11px !important;
  line-height:1.2;
  font-weight:620 !important;
  letter-spacing:0 !important;
}

/* Drawers, forms and readable sections */
.evo-drawer { width:min(900px,96vw); }
.evo-drawer .bc-drawer-header { padding:20px 24px !important; border-bottom:1px solid var(--evo-border); }
.bc-drawer-header p { font-size:11px !important; font-weight:650 !important; letter-spacing:.07em !important; }
.bc-drawer-header h2 { font-size:25px !important; line-height:1.2; font-weight:680 !important; letter-spacing:-.025em !important; }
.bc-drawer-header span { font-size:13px !important; line-height:1.5; font-weight:430 !important; }
.bc-drawer-content { padding:22px 24px 30px !important; }
.bc-drawer-tabs { padding: 0 24px !important; gap:4px !important; background:#fff; border-bottom:1px solid var(--evo-border); }
.bc-drawer-tabs button { min-height:44px; padding:0 12px !important; font-size:13px !important; font-weight:570 !important; }
.evo-form { gap:20px; }
.evo-form-section {
  padding:18px;
  border:1px solid var(--evo-border);
  border-radius:13px;
  background:#fff;
}
.evo-form-section-title { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:15px; padding-bottom:12px; border-bottom:1px solid #edf1f4; }
.evo-form-section-title strong { font-size:16px; font-weight:660; }
.evo-form-section-title span { max-width:55%; color:var(--evo-muted); font-size:12px; line-height:1.45; text-align:right; }
.evo-form label { font-size:13px !important; font-weight:580 !important; gap:6px; }
.evo-form label > span { justify-content:flex-start; }
.evo-help, .evo-field-error { font-size:12px; }
.evo-check { min-height:44px; border-radius:10px; font-size:13px !important; font-weight:500 !important; }
.evo-check small { display:block; margin-top:2px; color:var(--evo-muted); font-size:11px; font-weight:430; }
.evo-notes-field textarea { min-height:150px; background:#fffcf1 !important; border-color:#eadfb9 !important; }
.evo-route-box { padding:16px; border-radius:12px; background:#f6f9fc; border:1px solid var(--evo-border); }
.evo-route-action { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.evo-route-action span { color:var(--evo-muted); font-size:12px; line-height:1.45; }
.evo-drawer-footer { padding:14px 24px; }

/* Notes and meeting history */
.evo-note-preview,
.evo-meeting-note,
.evo-note-card {
  margin-top:9px;
  padding:11px 12px;
  border-left:3px solid #d4b75a;
  border-radius:0 9px 9px 0;
  background:#fffbed;
  color:#3e4650;
  font-size:13px;
  line-height:1.5;
  white-space:pre-wrap;
}
.evo-timeline-item { padding-left:32px; padding-bottom:20px; }
.evo-timeline-item strong { font-size:14px; font-weight:640; }
.evo-timeline-item span { font-size:12px; line-height:1.4; }
.evo-timeline-item p { font-size:13px; line-height:1.55; }

/* Organization chart and relationships */
.evo-orgchart {
  display:grid;
  gap:14px;
  padding:4px 0 10px;
}
.evo-orgchart-level { display:grid; gap:10px; position:relative; }
.evo-orgchart-level.is-child { margin-left:28px; padding-left:20px; border-left:2px solid #dce6ee; }
.evo-orgchart-node {
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:13px 14px;
  border:1px solid var(--evo-border);
  border-radius:12px;
  background:#fff;
}
.evo-orgchart-node:hover { border-color:#bdd1e0; box-shadow:0 6px 18px rgba(16,44,70,.06); }
.evo-orgchart-node h4 { margin:0; font-size:14px; font-weight:650; }
.evo-orgchart-node p { margin:3px 0 0; color:var(--evo-muted); font-size:12px; line-height:1.4; }
.evo-orgchart-meta { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; }
.evo-relationship-badge { display:inline-flex; padding:5px 8px; border-radius:999px; background:var(--evo-soft-blue); color:var(--evo-blue); font-size:11px; font-weight:620; }
.evo-relationship-badge.strong { background:#e8f6ef; color:#14704e; }
.evo-relationship-badge.risk { background:#fff0e7; color:#a95418; }

/* Detail cards */
.evo-detail-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.evo-detail-card { border-radius:11px; padding:13px; background:#f8fafc; }
.evo-detail-card span { font-size:10px; font-weight:650; letter-spacing:.055em; }
.evo-detail-card strong { font-size:14px; font-weight:640; }
.evo-detail-card small { font-size:12px; line-height:1.45; }

/* Login */
.login-page { background:#102a43 !important; }
.login-card { border-radius:18px !important; padding:32px !important; box-shadow:0 24px 70px rgba(0,0,0,.24) !important; }
.login-card h1 { font-size:29px !important; font-weight:680 !important; letter-spacing:-.035em !important; }
.login-card p { font-size:14px; }
.login-logo-mark, .brand-mark { border-radius:12px !important; font-weight:700 !important; background:var(--evo-blue) !important; }

@media (max-width:1366px) {
  .app-shell { grid-template-columns: 226px minmax(0,1fr) !important; }
  .bc-sidebar { width:226px !important; }
  .main-content { padding:22px 22px 34px !important; }
  .bc-page-title h1 { font-size:29px !important; }
  .bc-table th { padding:10px 11px !important; }
  .bc-table td { padding:11px !important; font-size:13px !important; }
  .evo-cell-title { min-width:210px; }
  .evo-search { min-width:270px; }
}
@media (max-width:1024px) {
  .app-shell { display:block !important; }
  .bc-sidebar { width:min(292px,88vw) !important; }
  .main-content { padding:18px 18px 30px !important; }
  .bc-page-header { align-items:flex-start !important; }
  .evo-form-section-title { display:block; }
  .evo-form-section-title span { display:block; max-width:none; margin-top:3px; text-align:left; }
  .evo-detail-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:768px) {
  body { font-size:14px; }
  .main-content { padding:14px 12px 26px !important; }
  .bc-page-title h1 { font-size:26px !important; }
  .bc-page-title > span { font-size:13px !important; }
  .bc-panel { padding:15px !important; }
  .evo-status-tabs { margin-left:-2px; margin-right:-2px; }
  .evo-table-toolbar-readable { display:grid; }
  .evo-toolbar-left,.evo-toolbar-right { display:grid; grid-template-columns:1fr; width:100%; }
  .evo-search,.evo-inline-filter { min-width:0; width:100%; }
  .evo-form-section { padding:14px; }
  .evo-drawer .bc-drawer-header,.bc-drawer-content,.evo-drawer-footer { padding-left:16px !important; padding-right:16px !important; }
  .bc-drawer-tabs { padding:0 12px !important; }
  .evo-detail-grid { grid-template-columns:1fr; }
  .evo-orgchart-level.is-child { margin-left:12px; padding-left:12px; }
  .evo-orgchart-node { grid-template-columns:38px minmax(0,1fr); }
  .evo-orgchart-meta { grid-column:1/-1; justify-content:flex-start; }
}
@media (max-width:480px) {
  .login-page { padding:14px; }
  .login-card { padding:24px 20px !important; }
  .bc-page-title h1 { font-size:24px !important; }
  .evo-status-tab { min-height:36px; font-size:12px; }
  .evo-form-grid,.evo-form-grid.cols-3 { grid-template-columns:1fr !important; }
  .evo-route-action .bc-secondary-button { width:100%; }
}

/* Actual organization-chart component markup */
.evo-org-chart { display:grid; gap:16px; padding:4px 0 12px; overflow-x:auto; }
.evo-org-branch { position:relative; display:grid; gap:10px; min-width:0; }
.evo-org-children { display:grid; gap:10px; margin-left:31px; padding-left:22px; border-left:2px solid #dce6ee; }
.evo-org-person {
  width:100%; min-width:0; display:grid; grid-template-columns:40px minmax(150px,1fr) auto; align-items:center; gap:12px;
  padding:13px 14px; border:1px solid var(--evo-border); border-radius:12px; background:#fff; color:var(--evo-text); text-align:left;
}
.evo-org-person:hover { border-color:#b8ccdc; background:#fbfdff; box-shadow:0 6px 18px rgba(16,44,70,.055); }
.evo-org-person.key-role { border-left:4px solid var(--evo-blue); padding-left:11px; }
.evo-org-person-copy strong,.evo-org-person-copy span,.evo-org-person-copy small { display:block; }
.evo-org-person-copy strong { font-size:14px; font-weight:650; }
.evo-org-person-copy span { margin-top:2px; color:var(--evo-text); font-size:12px; }
.evo-org-person-copy small { margin-top:2px; color:var(--evo-muted); font-size:11px; }
.evo-org-person-tags { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:5px; }
.evo-org-legend { display:flex; flex-wrap:wrap; gap:14px; margin-top:16px; padding:12px 14px; border-radius:10px; background:#f7f9fb; color:var(--evo-muted); font-size:12px; }
.evo-org-legend span { display:flex; align-items:center; gap:6px; }
.evo-org-legend i { width:9px; height:9px; border-radius:50%; background:#b7c5d1; }
.evo-org-legend i.decision { background:var(--evo-blue); }
.evo-org-legend i.strong { background:#15966a; }
.evo-org-legend i.developing { background:#d48b1e; }

/* Meeting and notes history */
.evo-meeting-list { display:grid; gap:9px; }
.evo-meeting-card {
  width:100%; display:grid; grid-template-columns:112px minmax(0,1fr) 28px; align-items:center; gap:14px;
  padding:14px; border:1px solid var(--evo-border); border-radius:11px; background:#fff; color:var(--evo-text); text-align:left;
}
.evo-meeting-card:hover { background:#f8fafc; border-color:#c8d7e3; }
.evo-meeting-date strong,.evo-meeting-date span,.evo-meeting-content strong,.evo-meeting-content span { display:block; }
.evo-meeting-date strong { font-size:13px; font-weight:640; }
.evo-meeting-date span { margin-top:2px; color:var(--evo-muted); font-size:11px; }
.evo-meeting-content > div { display:flex; align-items:baseline; gap:9px; flex-wrap:wrap; }
.evo-meeting-content strong { font-size:14px; font-weight:650; }
.evo-meeting-content span { color:var(--evo-muted); font-size:12px; }
.evo-meeting-content p { margin:6px 0 0; color:#405163; font-size:13px; line-height:1.5; white-space:pre-wrap; }
.evo-meeting-arrow { color:var(--evo-blue); font-size:22px; }
.evo-readable-note { border-radius:11px !important; background:#fffbed !important; border-color:#eadfb9 !important; }
.evo-readable-note p { white-space:pre-wrap; line-height:1.55; }

@media (max-width:768px) {
  .evo-org-children { margin-left:13px; padding-left:12px; }
  .evo-org-person { grid-template-columns:38px minmax(0,1fr); }
  .evo-org-person-tags { grid-column:1/-1; justify-content:flex-start; }
  .evo-meeting-card { grid-template-columns:1fr 24px; }
  .evo-meeting-date { grid-column:1/-1; display:flex; gap:8px; align-items:center; }
}

/* v8.0 — messaggi operativi e sicurezza account */
.evo-login-help{margin:14px 0 0;color:var(--text-muted,#667085);font-size:13px;line-height:1.5}
.evo-success-message{margin:12px 0;padding:12px 14px;border:1px solid #a6d8bd;border-radius:10px;background:#effaf4;color:#17633a;font-size:14px;line-height:1.45}
.evo-warning-box{padding:14px 16px;border:1px solid #efd39b;border-radius:12px;background:#fffaf0;color:#694b12}
.evo-warning-box strong{display:block;margin-bottom:5px}.evo-warning-box p{margin:0;line-height:1.5}
.evo-sidebar-user{gap:8px}.evo-sidebar-user .evo-icon-button{flex:0 0 auto}

/* v8.1 — non-destructive frontend error boundary */
.evo-frontend-error-banner {
  position: fixed;
  z-index: 9999;
  left: 20px;
  right: 20px;
  bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px;
  border: 1px solid rgba(153, 27, 27, .28);
  border-radius: 14px;
  background: #fff7f7;
  box-shadow: 0 16px 48px rgba(15, 23, 42, .18);
  color: #7f1d1d;
  font: 600 14px/1.45 Inter, ui-sans-serif, system-ui, sans-serif;
}
.evo-frontend-error-banner button {
  flex: 0 0 auto;
  border: 0;
  border-radius: 10px;
  padding: 9px 13px;
  background: #7f1d1d;
  color: #fff;
  font: inherit;
  cursor: pointer;
}

/* v8.2 — Organization form: production layout and consistent spacing */
.evo-organization-form-drawer {
  width:min(980px,100vw) !important;
  height:100vh;
  height:100dvh;
  padding:0 !important;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden !important;
  border-left:1px solid var(--evo-border);
}
.evo-organization-form-drawer .bc-drawer-header {
  position:relative;
  top:auto;
  margin:0 !important;
  padding:24px 28px 20px !important;
  align-items:flex-start;
  border-bottom:1px solid var(--evo-border);
}
.evo-organization-form-drawer .bc-drawer-header > div:first-child {
  min-width:0;
  max-width:760px;
}
.evo-organization-form-drawer .bc-drawer-header p { margin:0 0 8px; }
.evo-organization-form-drawer .bc-drawer-header h2 { margin:0; }
.evo-organization-form-drawer .bc-drawer-header span { display:block; margin-top:10px; }
.evo-organization-form-drawer .bc-drawer-content {
  min-height:0;
  display:block;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  padding:20px 28px 28px !important;
}
.evo-organization-form { gap:16px; }
.evo-organization-form .evo-form-section {
  padding:18px 20px 20px;
  border-radius:14px;
}
.evo-organization-form .evo-form-section-title {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,.9fr);
  align-items:center;
  gap:24px;
  margin-bottom:16px;
  padding-bottom:13px;
}
.evo-organization-form .evo-form-section-title strong {
  font-size:15px;
  line-height:1.3;
}
.evo-organization-form .evo-form-section-title span {
  max-width:none;
  font-size:12px;
  line-height:1.45;
  text-align:right;
}
.evo-form-grid-12 {
  grid-template-columns:repeat(12,minmax(0,1fr));
  column-gap:12px;
  row-gap:14px;
}
.evo-form-grid-12 .span-2 { grid-column:span 2; }
.evo-form-grid-12 .span-3 { grid-column:span 3; }
.evo-form-grid-12 .span-4 { grid-column:span 4; }
.evo-form-grid-12 .span-5 { grid-column:span 5; }
.evo-form-grid-12 .span-6 { grid-column:span 6; }
.evo-form-grid-12 .span-8 { grid-column:span 8; }
.evo-form-grid-12 .span-12 { grid-column:1 / -1; }
.evo-organization-form label {
  min-width:0;
  align-content:start;
}
.evo-organization-form input,
.evo-organization-form select,
.evo-organization-form textarea {
  width:100%;
  margin:0;
  border-radius:10px;
}
.evo-organization-form input,
.evo-organization-form select { height:42px; }
.evo-organization-form textarea { min-height:96px; }
.evo-organization-form .evo-notes-field textarea { min-height:126px; }
.evo-field-help {
  display:block;
  margin-top:1px;
  color:var(--evo-muted);
  font-size:11px;
  font-weight:440;
  line-height:1.35;
}
.evo-organization-form-drawer .evo-drawer-footer {
  position:relative;
  bottom:auto;
  min-height:70px;
  padding:13px 28px !important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  background:#fff;
  border-top:1px solid var(--evo-border);
  box-shadow:0 -10px 24px rgba(16,44,70,.035);
}
.evo-form-required-note {
  color:var(--evo-muted);
  font-size:12px;
  font-weight:500;
}
.evo-form-required-note b { color:var(--danger); }
.evo-footer-actions {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}
.evo-footer-actions .bc-primary-button,
.evo-footer-actions .bc-secondary-button { min-width:124px; }

@media (max-width:1024px) {
  .evo-organization-form-drawer { width:100vw !important; }
  .evo-organization-form-drawer .bc-drawer-header { padding:20px 22px 18px !important; }
  .evo-organization-form-drawer .bc-drawer-content { padding:18px 22px 24px !important; }
  .evo-organization-form-drawer .evo-drawer-footer { padding:12px 22px !important; }
  .evo-organization-form .evo-form-section-title {
    grid-template-columns:1fr;
    gap:4px;
  }
  .evo-organization-form .evo-form-section-title span { text-align:left; }
  .evo-form-grid-12 .span-2,
  .evo-form-grid-12 .span-3 { grid-column:span 4; }
  .evo-form-grid-12 .span-5 { grid-column:span 8; }
}
@media (max-width:720px) {
  .evo-organization-form-drawer .bc-drawer-header { padding:17px 16px 15px !important; }
  .evo-organization-form-drawer .bc-drawer-content { padding:14px 14px 20px !important; }
  .evo-organization-form .evo-form-section { padding:15px; }
  .evo-form-grid-12 { grid-template-columns:1fr; gap:13px; }
  .evo-form-grid-12 .span-2,
  .evo-form-grid-12 .span-3,
  .evo-form-grid-12 .span-4,
  .evo-form-grid-12 .span-5,
  .evo-form-grid-12 .span-6,
  .evo-form-grid-12 .span-8,
  .evo-form-grid-12 .span-12 { grid-column:1; }
  .evo-organization-form-drawer .evo-drawer-footer {
    padding:12px 14px !important;
    min-height:0;
  }
  .evo-form-required-note { display:none; }
  .evo-footer-actions { width:100%; }
  .evo-footer-actions button { flex:1; min-width:0; }
}

@media (max-width:1024px) {
  .evo-form-grid-12 .span-2,
  .evo-form-grid-12 .span-3,
  .evo-form-grid-12 .span-4,
  .evo-form-grid-12 .span-5,
  .evo-form-grid-12 .span-6 { grid-column:span 6; }
  .evo-form-grid-12 .span-8,
  .evo-form-grid-12 .span-12,
  .evo-form-grid-12 .evo-source-field { grid-column:1 / -1; }
}

@media (min-width:721px) and (max-width:1024px) {
  .evo-form-grid-12 .span-8 { grid-column:span 6; }
  .evo-form-grid-12 .evo-relation-summary-field { grid-column:span 4; }
}

/* v8.2.2: native organization form submission and stable drawer layout */
.evo-organization-form-drawer > .evo-drawer-form {
  display:flex;
  flex-direction:column;
  min-height:0;
  flex:1 1 auto;
  overflow:hidden;
}
.evo-organization-form-drawer > .evo-drawer-form > .bc-drawer-content {
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
}
.evo-organization-form-drawer > .evo-drawer-form > .evo-drawer-footer {
  flex:0 0 auto;
}

/* ===== EVOLVIAMO v9 · Metodo + IPA · Sales Intelligence visual system ===== */
:root{--evo-navy:#0a2540;--evo-blue:#0b67a3;--evo-cyan:#19b7c9;--evo-bg:#f3f6f9;--evo-line:#dbe4ec;--evo-muted:#66788a;--evo-green:#0f9f72}
body{background:var(--evo-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.app-shell{grid-template-columns:244px minmax(0,1fr)}
.bc-sidebar.home-premium-sidebar{padding:18px 14px;background:#0b2b47}
.home-logo-card{min-height:72px;border-radius:14px;background:rgba(255,255,255,.055);padding:14px 12px}
.home-evolviamo-logo span{letter-spacing:.045em;font-size:17px}
.home-sidebar-nav{gap:4px}.home-sidebar-link{min-height:42px;border-radius:10px;padding:0 10px;font-size:13px}.nav-link-icon-box{width:25px;height:25px}
.main-content{padding:24px 30px 40px;max-width:1540px;width:100%;margin:0 auto}
.evo-page-header{margin-bottom:20px}.bc-page-title h1{font-size:30px;letter-spacing:-.04em}.bc-page-title p{font-size:13px;max-width:720px}.bc-title-meta{font-size:10px}
.home-hero-card{border-radius:20px;box-shadow:0 14px 38px rgba(7,33,57,.13)}
.home-panel,.bc-panel{border-radius:16px;box-shadow:0 8px 24px rgba(17,41,65,.055)}
.home-mini-kpi{border-radius:14px;min-height:96px}.home-mini-kpi strong{font-size:26px}
.innovation-main-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:16px;margin-top:16px}.innovation-priorities-grid{margin-top:16px}
.innovation-cycle-panel,.innovation-ipa-panel{min-height:430px}.home-panel-head button{border:1px solid var(--evo-line);background:#fff;color:var(--evo-navy);height:34px;padding:0 12px;border-radius:9px;font-weight:800}
.dashboard-phase-track{display:grid;gap:8px}.dashboard-phase{display:grid;grid-template-columns:38px 1fr 32px;gap:12px;align-items:center;width:100%;border:1px solid var(--evo-line);background:#fff;border-radius:12px;padding:10px 12px;text-align:left;color:var(--evo-navy)}.dashboard-phase:hover{border-color:#9ec6df;transform:translateY(-1px)}.dashboard-phase>span{font-size:11px;letter-spacing:.08em;color:var(--evo-blue);font-weight:900}.dashboard-phase strong{display:block;font-size:13px}.dashboard-phase small{display:block;color:var(--evo-muted);margin-top:2px}.dashboard-phase b{width:28px;height:28px;border-radius:8px;background:#edf4f9;display:grid;place-items:center;font-size:12px}
.dashboard-ipa-score{display:flex;align-items:baseline;gap:10px;padding:18px 0 12px}.dashboard-ipa-score>span{font-size:10px;font-weight:900;letter-spacing:.11em;color:var(--evo-muted)}.dashboard-ipa-score strong{font-size:70px;letter-spacing:-.075em;color:var(--evo-navy)}.dashboard-ipa-score em{font-style:normal;font-size:12px;color:var(--evo-muted);font-weight:800}.dashboard-ipa-track,.ipa-big-track,.evo-ipa-track{height:9px;background:#e9eff4;border-radius:999px;overflow:hidden}.dashboard-ipa-track i,.ipa-big-track i,.evo-ipa-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b67a3,#19b7c9)}.dashboard-ipa-insight{margin-top:26px;padding:16px;border-radius:13px;background:#f6f9fb;border:1px solid var(--evo-line)}.dashboard-ipa-insight span,.dashboard-ipa-insight small{display:block;color:var(--evo-muted);font-size:11px}.dashboard-ipa-insight strong{display:block;margin:5px 0;font-size:16px}
.innovation-action-list{display:grid;gap:8px}.innovation-action-list button{display:grid;grid-template-columns:34px 1fr 20px;gap:10px;align-items:center;border:1px solid var(--evo-line);background:#fff;border-radius:12px;padding:12px;text-align:left}.innovation-action-list button>span{font-size:10px;color:var(--evo-blue);font-weight:900}.innovation-action-list strong{display:block;font-size:13px}.innovation-action-list small{display:block;color:var(--evo-muted);font-size:11px;margin-top:2px}.innovation-action-list i{font-style:normal;font-size:22px;color:#8ca0b2}
.method-board,.method-table-panel,.ipa-portfolio-panel,.maturity-panel{margin-top:16px}.method-phase-grid{display:grid;gap:1px;border-top:1px solid var(--evo-line)}.method-phase-card{display:grid;grid-template-columns:54px 1fr 100px;gap:16px;padding:18px 4px;border-bottom:1px solid var(--evo-line);align-items:start}.method-phase-number{font-size:11px;font-weight:900;letter-spacing:.08em;color:#8ea0b0}.method-phase-card.has-items .method-phase-number{color:var(--evo-blue)}.method-phase-copy h3{margin:0 0 5px;font-size:15px}.method-phase-copy p{margin:0;color:var(--evo-muted);font-size:12px;line-height:1.45}.method-output{margin-top:9px;display:flex;gap:8px;align-items:baseline}.method-output span{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#96a5b3;font-weight:900}.method-output strong{font-size:11px}.method-phase-side{text-align:right}.method-phase-side b{display:block;font-size:24px}.method-phase-side span,.method-phase-side em{display:block;font-size:10px;color:var(--evo-muted);font-style:normal}.method-phase-side em{margin-top:6px;font-weight:900;color:var(--evo-blue)}
.method-company-list{display:grid;gap:6px}.method-company-row{display:grid;grid-template-columns:38px 1.2fr 1.2fr 72px 18px;gap:12px;align-items:center;border:1px solid var(--evo-line);background:#fff;border-radius:11px;padding:11px 12px;text-align:left}.method-company-row:hover{background:#f8fbfd}.method-company-phase{font-size:10px;font-weight:900;color:var(--evo-blue)}.method-company-row strong{display:block;font-size:12px}.method-company-row small,.method-company-row span{font-size:10px;color:var(--evo-muted)}.method-company-next span,.method-company-ipa span{display:block}.method-company-ipa strong{font-size:18px}.method-company-row>i{font-style:normal;font-size:20px;color:#8fa0af}
.ipa-company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ipa-company-card{border:1px solid var(--evo-line);background:#fff;border-radius:14px;padding:16px;text-align:left}.ipa-card-head{display:flex;justify-content:space-between;gap:10px;align-items:start}.ipa-card-head strong{display:block;font-size:13px}.ipa-card-head span{font-size:10px;color:var(--evo-muted)}.ipa-card-head b{font-size:34px;letter-spacing:-.05em}.ipa-big-track{margin:14px 0}.ipa-mini-dimensions{height:72px;display:flex;gap:5px;align-items:end;padding:8px 0}.ipa-mini-dimensions span{flex:1;height:100%;background:#f0f4f7;border-radius:5px;display:flex;align-items:end;overflow:hidden}.ipa-mini-dimensions i{display:block;width:100%;background:#d0e8f5}.ipa-card-foot{display:flex;justify-content:space-between;border-top:1px solid var(--evo-line);padding-top:10px;font-size:10px;color:var(--evo-muted)}.ipa-card-foot em{font-style:normal;color:var(--evo-blue);font-weight:800}
.maturity-scale{border-top:1px solid var(--evo-line)}.maturity-row{display:grid;grid-template-columns:34px 140px 1fr 1fr;gap:16px;padding:14px 2px;border-bottom:1px solid var(--evo-line);align-items:start}.maturity-row>span{color:#8b9bab;font-size:10px;font-weight:900}.maturity-row strong{font-size:12px}.maturity-row p,.maturity-row em{margin:0;font-size:11px;line-height:1.45;color:var(--evo-muted);font-style:normal}
.evo-method-stepper{display:grid;grid-template-columns:repeat(6,minmax(115px,1fr));gap:7px;overflow:auto;padding-bottom:4px}.evo-method-step{border:1px solid var(--evo-line);border-radius:11px;padding:10px;background:#fafcfd;min-width:120px}.evo-method-step.current{border-color:#6fb6db;background:#edf7fc}.evo-method-step.done{background:#f2faf7}.evo-method-dot{font-size:10px;font-weight:900;color:#8193a4}.evo-method-step.current .evo-method-dot{color:var(--evo-blue)}.evo-method-step.done .evo-method-dot{color:var(--evo-green)}.evo-method-step strong{display:block;font-size:10px;margin:5px 0}.evo-method-step span{font-size:9px;color:var(--evo-muted)}.evo-method-focus{margin:18px 0;padding:18px;border-radius:14px;background:#0b2b47;color:#fff}.evo-method-focus>p{font-size:9px;letter-spacing:.1em;color:#9fcce5;font-weight:900;margin:0}.evo-method-focus h3{margin:6px 0 14px;font-size:22px}.evo-method-focus-grid{display:grid;grid-template-columns:1.4fr 1.2fr .6fr;gap:12px}.evo-method-focus-grid div{padding:12px;background:rgba(255,255,255,.07);border-radius:10px}.evo-method-focus-grid span{display:block;font-size:9px;color:#afc4d4;text-transform:uppercase;letter-spacing:.08em}.evo-method-focus-grid strong{display:block;margin-top:5px;font-size:11px;line-height:1.4}
.evo-ipa-hero{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center;padding:18px;border-radius:15px;background:#0b2b47;color:#fff}.evo-ipa-score{display:flex;align-items:baseline;gap:5px}.evo-ipa-score span{position:absolute;font-size:9px;letter-spacing:.1em;color:#a9c7da;transform:translateY(-34px)}.evo-ipa-score strong{font-size:58px;letter-spacing:-.08em}.evo-ipa-score em{font-style:normal;font-size:10px;color:#a9c7da}.evo-ipa-hero p{margin:0;color:#a9c7da;font-size:9px;letter-spacing:.1em}.evo-ipa-hero h3{margin:4px 0;font-size:22px}.evo-ipa-hero>div>span{font-size:11px;color:#d0e2ec}.evo-ipa-dimension-list{display:grid;gap:11px;margin:18px 0}.evo-ipa-dimension>div:first-child{display:flex;justify-content:space-between;margin-bottom:5px}.evo-ipa-dimension strong,.evo-ipa-dimension span{font-size:11px}.evo-maturity-inline{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.evo-maturity-inline div{border:1px solid var(--evo-line);border-radius:9px;padding:9px;background:#fff}.evo-maturity-inline div.active{border-color:#4ca6d1;background:#edf7fc}.evo-maturity-inline span{display:block;font-size:9px;color:var(--evo-blue);font-weight:900}.evo-maturity-inline strong{display:block;font-size:10px;margin-top:3px}
.evo-method-form-hint{border:1px solid var(--evo-line);border-radius:12px;background:#f7fafc;padding:12px}.evo-method-form-hint span{display:block;font-size:10px;color:var(--evo-muted)}.evo-method-form-hint strong{display:block;font-size:11px;margin-top:4px;line-height:1.4}.evo-ipa-form-note{font-size:10px;color:var(--evo-muted);padding:9px 11px;border-radius:9px;background:#f7fafc}
@media(max-width:1180px){.innovation-main-grid{grid-template-columns:1fr}.ipa-company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell{grid-template-columns:210px minmax(0,1fr)}.main-content{padding:20px}}
@media(max-width:820px){.ipa-company-grid{grid-template-columns:1fr}.method-company-row{grid-template-columns:34px 1fr 50px 16px}.method-company-next{display:none}.maturity-row{grid-template-columns:34px 1fr}.maturity-row p,.maturity-row em{grid-column:2}.evo-method-focus-grid{grid-template-columns:1fr}.innovation-main-grid{display:block}.innovation-ipa-panel{margin-top:12px}.main-content{padding:14px}}

/* v9.0.1 - organization save diagnostics */
.evo-save-status{font-size:12px;line-height:1.35;color:#667085;min-height:16px;margin-right:10px;align-self:center}.evo-save-status[data-tone="error"]{color:#b42318}.evo-save-status[data-tone="warning"]{color:#b54708}.evo-save-status[data-tone="working"]{color:#175cd3}


/* v9.0.2 - feedback coerente per tutti i form CRUD */
.evo-form-save-status{margin-right:auto;min-height:20px;font-size:12px;line-height:1.35;color:#64748b;align-self:center}
.evo-form-save-status[data-tone="working"]{color:#0f5f93;font-weight:650}
.evo-form-save-status[data-tone="warning"]{color:#9a6700;font-weight:650}
.evo-form-save-status[data-tone="error"]{color:#b42318;font-weight:650}
@media(max-width:720px){.evo-form-save-status{width:100%;order:-1;margin:0 0 6px}}

/* v9.0.5: all CRUD forms own both scrollable body and footer.
   This guarantees valid DOM and native submit behavior in every drawer. */
.evo-drawer > form.evo-drawer-form {
  display:flex;
  flex-direction:column;
  min-height:0;
  flex:1 1 auto;
  overflow:hidden;
}
.evo-drawer > form.evo-drawer-form > .bc-drawer-content {
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
}
.evo-drawer > form.evo-drawer-form > .evo-drawer-footer {
  flex:0 0 auto;
}

/* v9.1.0 — IPA technology map + historical company profile */
.evo-tech-head,.evo-financial-head{margin-top:24px}
.evo-tech-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0 18px}
.evo-tech-card,.evo-tech-feature{border:1px solid var(--line,#dbe4ee);border-radius:14px;padding:14px 16px;background:#fff}
.evo-tech-card>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.evo-tech-card strong{font-size:13px}.evo-tech-card span{font-size:11px;color:#557086;background:#f3f7fa;padding:4px 8px;border-radius:999px}.evo-tech-card p,.evo-tech-feature p{margin:10px 0 3px;font-size:13px;color:#10263d}.evo-tech-card small{color:#6c7f90}
.evo-ai-robot-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.evo-tech-feature>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#6c7f90}.evo-tech-feature>strong{display:block;margin-top:5px;font-size:16px}
.evo-financial-table,.evo-financial-form{border:1px solid #dbe4ee;border-radius:14px;overflow:hidden;background:#fff}.evo-financial-row{display:grid;grid-template-columns:.7fr 1fr 1.4fr 1.4fr;gap:10px;align-items:center;padding:11px 14px;border-bottom:1px solid #e8eef4}.evo-financial-row:last-child{border-bottom:0}.evo-financial-row.head{background:#f6f9fb;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:#687b8d}.evo-financial-row.inputs{padding:8px 10px}.evo-financial-row.inputs input{width:100%;min-width:0;border:1px solid #d7e1ea;border-radius:9px;padding:10px 11px;background:white}
.evo-form-section .evo-financial-form{width:100%}
@media(max-width:760px){.evo-tech-grid,.evo-ai-robot-grid{grid-template-columns:1fr}.evo-financial-row{grid-template-columns:1fr 1fr}.evo-financial-row.head span:nth-child(n+3){display:none}.evo-financial-row.inputs input{min-width:0}}


/* ===== EVOLVIAMO v9.3.2 · Fluid Responsive Enterprise Layout =====
   Use the available viewport instead of centering the workspace inside a narrow max-width.
   Reading-width limits remain only on prose, not on operational pages/tables. */
:root{
  --evo-fluid-gutter: clamp(18px, 2.2vw, 42px);
}
.main-content{
  box-sizing:border-box !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:24px var(--evo-fluid-gutter) 40px !important;
}
.bc-page-header,
.home-agent-page,
.find-company-page,
.evo-page-stack{
  width:100% !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  box-sizing:border-box;
}
.evo-page-stack > *,
.bc-panel,
.bc-metrics-row,
.bc-table-shell{
  max-width:none;
  box-sizing:border-box;
}
/* Wide operational tables should consume the workspace instead of leaving dead columns. */
.bc-table-shell{
  width:100%;
  overflow-x:auto;
}
.bc-table{
  width:100%;
}
/* KPI rows scale with the monitor while retaining a usable card minimum. */
.bc-uniform-kpi-row,
.evo-metrics-row{
  width:100%;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr)) !important;
}
/* Toolbars can grow without stretching search fields absurdly on ultrawide screens. */
.evo-table-toolbar{
  width:100%;
}
.evo-toolbar-left{
  flex:1 1 auto;
  min-width:0;
}
.evo-search{
  width:clamp(260px,28vw,520px);
  max-width:100%;
}
@media (min-width:1920px){
  :root{--evo-fluid-gutter:clamp(28px,2.4vw,56px)}
  .main-content{padding-top:28px !important}
}
@media (max-width:1180px){
  :root{--evo-fluid-gutter:20px}
  .main-content{padding:20px var(--evo-fluid-gutter) 34px !important}
}
@media (max-width:820px){
  :root{--evo-fluid-gutter:14px}
  .main-content{padding:14px var(--evo-fluid-gutter) 28px !important}
  .bc-uniform-kpi-row,.evo-metrics-row{grid-template-columns:1fr 1fr !important}
}
@media (max-width:560px){
  :root{--evo-fluid-gutter:12px}
  .bc-uniform-kpi-row,.evo-metrics-row{grid-template-columns:1fr !important}
  .evo-search{width:100%}
}
/* v9.3.6 - Travel activity workflow */
.evo-travel-activity-list{display:grid;gap:8px}.evo-travel-activity-row{display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid var(--border,#d9e2ec);border-radius:10px;background:#fff}.evo-travel-activity-row:hover{background:#f8fbff}.evo-travel-activity-row input{margin-top:3px}.evo-travel-activity-row span{display:grid;gap:3px}.evo-travel-activity-row strong{font-size:13px;line-height:1.35}.evo-travel-activity-row small{font-size:12px;color:#68788d;line-height:1.35}.evo-travel-activity-row[hidden]{display:none!important}.evo-activities-table td:nth-child(6){min-width:155px}.evo-activities-table td:nth-child(6) strong,.evo-activities-table td:nth-child(6) span{display:block}.evo-activities-table td:nth-child(6) span{margin-top:3px;color:#68788d;font-size:12px}.evo-activities-table{table-layout:auto}.evo-activities-table td{vertical-align:middle}

/* v9.3.8 — trasferte multi-giorno */
.evo-travel-existing-list{display:grid;gap:10px}.evo-travel-existing-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 14px;border:1px solid var(--border,#d8e1ec);border-radius:12px;background:#fff}.evo-travel-existing-row>div{min-width:0;display:grid;gap:3px}.evo-travel-existing-row strong{font-size:14px}.evo-travel-existing-row small{color:var(--muted,#64748b);line-height:1.4}.evo-travel-activity-row.is-assigned{background:#f8fafc;opacity:.78}.evo-travel-activity-row.is-assigned input{cursor:not-allowed}.evo-travel-activity-row .bc-secondary-button{margin-left:auto;white-space:nowrap}@media(max-width:760px){.evo-travel-existing-row{align-items:flex-start;flex-direction:column}.evo-travel-existing-row .bc-secondary-button{width:100%}}
