:root {
  --scp-blue:#1f5f8b;
  --scp-blue-dark:#164666;
  --scp-green:#2f8f5b;
  --scp-orange:#d9822b;
  --scp-red:#b42318;
  --scp-bg:#f4f7fb;
  --scp-card:#ffffff;
  --scp-text:#172033;
  --scp-muted:#637083;
  --scp-border:#dce4ef;
  --scp-shadow:0 14px 40px rgba(22,47,80,.10);
  --scp-radius:22px;
}

.scp-todo-app,
.scp-todo-app * {
  box-sizing:border-box;
}

.scp-todo-app {
  width:100%;
  max-width:1180px;
  margin:0 auto;
  padding:18px;
  font-family:Arial, Helvetica, sans-serif;
  color:var(--scp-text);
  line-height:1.4;
}

.scp-todo-app a { text-decoration:none; }
.scp-todo-app form { margin:0; }
.scp-muted { color:var(--scp-muted); }
.scp-small-note { color:var(--scp-muted); font-size:13px; margin:12px 0 0; }
.scp-hidden { display:none !important; }

.scp-login-wrap {
  min-height:60vh;
  display:flex;
  align-items:center;
  justify-content:center;
}

.scp-login-card,
.scp-panel,
.scp-app-header,
.scp-alert {
  background:var(--scp-card);
  border:1px solid var(--scp-border);
  border-radius:var(--scp-radius);
  box-shadow:var(--scp-shadow);
}

.scp-login-card {
  width:100%;
  max-width:440px;
  padding:26px;
}

.scp-brand-line {
  color:var(--scp-blue);
  font-weight:700;
  letter-spacing:.02em;
  text-transform:uppercase;
  font-size:12px;
  margin-bottom:5px;
}

.scp-login-card h1,
.scp-app-header h1,
.scp-panel-title h2 {
  margin:0;
  line-height:1.15;
}

.scp-login-card h1 { font-size:30px; }
.scp-app-header h1 { font-size:32px; }
.scp-panel-title h2 { font-size:22px; }

.scp-form,
.scp-grid-form {
  display:grid;
  gap:14px;
}

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

.scp-span-2 { grid-column:1 / -1; }

.scp-form label,
.scp-grid-form label,
.scp-calendar-url {
  display:grid;
  gap:6px;
  font-size:14px;
  font-weight:700;
  color:#27364c;
}

.scp-form small,
.scp-grid-form small {
  color:var(--scp-muted);
  font-weight:400;
}

.scp-form input,
.scp-grid-form input,
.scp-grid-form textarea,
.scp-grid-form select,
.scp-search,
.scp-calendar-url input {
  width:100%;
  min-height:44px;
  border:1px solid var(--scp-border);
  border-radius:14px;
  padding:10px 12px;
  font-size:15px;
  color:var(--scp-text);
  background:#fff;
}

.scp-grid-form textarea {
  min-height:92px;
  resize:vertical;
}

.scp-btn {
  appearance:none;
  border:0;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 16px;
  font-weight:700;
  font-size:14px;
  cursor:pointer;
  text-align:center;
  gap:7px;
  color:var(--scp-text);
  background:#eef3f9;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease;
}

.scp-btn:hover { transform:translateY(-1px); box-shadow:0 8px 18px rgba(20,40,70,.12); }
.scp-btn-primary { background:var(--scp-blue); color:#fff; }
.scp-btn-primary:hover { background:var(--scp-blue-dark); }
.scp-btn-secondary { background:var(--scp-green); color:#fff; }
.scp-btn-view { background:var(--scp-green); color:#fff; border:1px solid rgba(22,101,52,.22); }
.scp-btn-view:hover { background:#138a48; color:#fff; }
.scp-btn-light { background:#edf3f8; color:#1d3148; }
.scp-btn-danger { background:#fff0ee; color:var(--scp-red); }
.scp-btn-small { min-height:34px; padding:7px 12px; font-size:13px; }

.scp-alert {
  padding:14px 16px;
  margin-bottom:16px;
  font-weight:700;
}
.scp-alert-ok { border-color:#bfe7cc; background:#f1fbf4; color:#166534; }
.scp-alert-error { border-color:#ffd1d1; background:#fff5f5; color:#9f1239; }

.scp-app-header {
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  padding:24px;
  background:linear-gradient(135deg, #fff 0%, #eef7ff 100%);
  margin-bottom:18px;
}

.scp-app-header p { margin:8px 0 0; color:var(--scp-muted); }
.scp-user-box {
  min-width:190px;
  display:grid;
  gap:6px;
  justify-items:end;
  text-align:right;
}
.scp-user-box span { color:var(--scp-muted); font-size:13px; }

.scp-stat-grid {
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:12px;
  margin-bottom:16px;
}

.scp-stat-card {
  border:1px solid var(--scp-border);
  border-radius:18px;
  background:#fff;
  padding:15px;
  color:var(--scp-text);
  display:grid;
  gap:6px;
  box-shadow:0 8px 24px rgba(17,42,70,.06);
}
.scp-stat-card span { color:var(--scp-muted); font-size:13px; font-weight:700; }
.scp-stat-card strong { font-size:28px; line-height:1; color:var(--scp-blue); }
.scp-stat-card.is-active { border-color:var(--scp-blue); box-shadow:0 10px 28px rgba(31,95,139,.18); }
.scp-stat-card.scp-danger strong { color:var(--scp-red); }

.scp-toolbar {
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:16px;
}
.scp-search-form {
  display:flex;
  gap:8px;
  flex:1 1 320px;
  min-width:220px;
}
.scp-search { flex:1; }

.scp-panel {
  padding:20px;
  margin-bottom:18px;
}
.scp-panel-title {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:14px;
}
.scp-form-actions {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.scp-mobile-tabs {
  display:none;
  gap:8px;
  overflow-x:auto;
  margin-bottom:12px;
}
.scp-mobile-tabs a {
  white-space:nowrap;
  border-radius:999px;
  background:#eef3f9;
  color:#1d3148;
  padding:8px 13px;
  font-weight:700;
  font-size:13px;
}

.scp-task-list {
  display:grid;
  gap:12px;
}
.scp-task-card {
  border:1px solid var(--scp-border);
  border-left-width:8px;
  border-radius:20px;
  background:#fff;
  padding:14px;
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  gap:12px;
  transition:background .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.scp-task-card.scp-tone-green {
  border-color:#9fd8b0;
  border-left-color:#22a65a;
  background:linear-gradient(90deg, #eefaf3 0%, #ffffff 70%);
}
.scp-task-card.scp-tone-yellow {
  border-color:#f0d28a;
  border-left-color:#e5a800;
  background:linear-gradient(90deg, #fff8df 0%, #ffffff 70%);
}
.scp-task-card.scp-tone-red,
.scp-task-card.is-overdue {
  border-color:#f0aaa5;
  border-left-color:#d93025;
  background:linear-gradient(90deg, #fff0ee 0%, #ffffff 70%);
}
.scp-task-card.is-done { opacity:.72; }
.scp-task-card.is-done h3 { text-decoration:line-through; }
.scp-check-btn {
  width:26px;
  height:26px;
  border-radius:50%;
  border:2px solid var(--scp-blue);
  background:#fff;
  cursor:pointer;
  margin-top:3px;
}
.scp-check-btn.checked { background:var(--scp-green); border-color:var(--scp-green); position:relative; }

.scp-todo-app .scp-task-check .scp-check-btn {
  box-sizing:border-box;
  line-height:1;
  min-height:26px;
}
.scp-todo-app .scp-task-check .scp-check-btn,
.scp-todo-app .scp-task-check .scp-check-btn:hover,
.scp-todo-app .scp-task-check .scp-check-btn:focus {
  text-indent:0;
}


.scp-task-check form { margin:0; display:inline-flex; }
.scp-task-check { display:flex; align-items:flex-start; justify-content:center; }

.scp-check-btn.checked:after {
  content:'✓';
  color:#fff;
  font-weight:900;
  position:absolute;
  left:5px;
  top:0px;
}
.scp-card-top {
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.scp-card-top h3 { margin:0; font-size:18px; }
.scp-task-date {
  display:grid;
  justify-items:end;
  gap:2px;
  color:var(--scp-blue);
  font-size:13px;
  white-space:nowrap;
}
.scp-task-date strong { font-size:16px; }
.scp-tone-green .scp-task-date { color:#166534; }
.scp-tone-yellow .scp-task-date { color:#8a5d0f; }
.scp-tone-red .scp-task-date { color:var(--scp-red); }
.scp-badges {
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:8px;
}
.scp-badge {
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:5px 9px;
  font-size:12px;
  font-weight:700;
  background:#edf3f8;
  color:#244058;
}
.scp-badge-scadenza { background:#fff3dc; color:#8a4b0f; }
.scp-badge-operazione { background:#eaf5ff; color:#1f5f8b; }
.scp-badge-alert { background:#fff0ee; color:var(--scp-red); }
.scp-status-aperta { background:#e0f2fe !important; color:#075985 !important; border:1px solid #bae6fd !important; }
.scp-status-in_lavorazione { background:#dcfce7 !important; color:#166534 !important; border:1px solid #bbf7d0 !important; }
.scp-status-completata { background:#dbeafe !important; color:#1e40af !important; border:1px solid #bfdbfe !important; }
.scp-status-annullata { background:#111827 !important; color:#ffffff !important; border:1px solid #111827 !important; }
.scp-task-desc { margin:8px 0 0; color:#334155; }
.scp-task-desc-short { font-size:13px; line-height:1.32; color:#48566a; }
.scp-task-meta {
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:9px;
  color:var(--scp-muted);
  font-size:13px;
}
.scp-task-actions {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:12px;
}

.scp-user-list {
  display:grid;
  gap:8px;
  margin-top:16px;
}
.scp-user-row {
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  border:1px solid var(--scp-border);
  border-radius:16px;
  padding:12px;
  background:#fff;
}
.scp-user-row span {
  display:block;
  color:var(--scp-muted);
  font-size:13px;
  margin-top:2px;
}
.scp-user-row.is-disabled { opacity:.58; }

.scp-user-row-actions {
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.scp-user-row-actions form {
  margin:0;
}
.scp-btn-danger {
  background:#b91c1c;
  color:#fff;
  border-color:#991b1b;
}
.scp-btn-danger:hover {
  filter:brightness(.96);
}

.scp-calendar-actions {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:14px 0;
}
.scp-calendar-url { margin-top:12px; }
.scp-diagnostic-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.scp-diagnostic-grid div {
  border:1px solid var(--scp-border);
  border-radius:16px;
  padding:12px;
  background:#fff;
}
.scp-diagnostic-grid strong,
.scp-diagnostic-grid span { display:block; }
.scp-diagnostic-grid span { color:var(--scp-muted); margin-top:4px; overflow-wrap:anywhere; }
.scp-empty {
  border:1px dashed var(--scp-border);
  border-radius:18px;
  padding:22px;
  color:var(--scp-muted);
  text-align:center;
  background:#fbfdff;
}

html.scp-todo-mobile-clean body > *:not(.scp-todo-keep),
body.scp-todo-mobile-clean header,
body.scp-todo-mobile-clean footer,
body.scp-todo-mobile-clean nav,
body.scp-todo-mobile-clean aside,
body.scp-todo-mobile-clean .site-header,
body.scp-todo-mobile-clean .site-footer,
body.scp-todo-mobile-clean .entry-header,
body.scp-todo-mobile-clean .page-header,
body.scp-todo-mobile-clean .sidebar,
body.scp-todo-mobile-clean #masthead,
body.scp-todo-mobile-clean #colophon {
  /* volutamente non aggressivo su tutti i wrapper per evitare di nascondere lo shortcode */
}

body.scp-todo-mobile-clean .site-header,
body.scp-todo-mobile-clean .site-footer,
body.scp-todo-mobile-clean .entry-header,
body.scp-todo-mobile-clean .page-header,
body.scp-todo-mobile-clean .widget-area,
body.scp-todo-mobile-clean .sidebar,
body.scp-todo-mobile-clean #masthead,
body.scp-todo-mobile-clean #colophon,
body.scp-todo-mobile-clean nav.navigation,
body.scp-todo-mobile-clean .breadcrumb,
body.scp-todo-mobile-clean .breadcrumbs {
  display:none !important;
}
body.scp-todo-mobile-clean .scp-todo-app {
  max-width:none;
  padding:10px;
}

@media (max-width: 820px) {
  .scp-todo-app { padding:10px; }
  .scp-app-header { align-items:flex-start; flex-direction:column; padding:18px; border-radius:20px; }
  .scp-user-box { justify-items:start; text-align:left; width:100%; }
  .scp-user-box form { width:100%; }
  .scp-user-box .scp-btn { width:100%; }
  .scp-stat-grid { grid-template-columns:repeat(2, minmax(0,1fr)); }
  .scp-grid-form { grid-template-columns:1fr; }
  .scp-span-2 { grid-column:auto; }
  .scp-toolbar { display:grid; grid-template-columns:1fr 1fr; }
  .scp-toolbar .scp-btn { width:100%; }
  .scp-search-form { grid-column:1 / -1; min-width:0; }
  .scp-mobile-tabs { display:flex; }
  .scp-panel { padding:15px; border-radius:20px; }
  .scp-card-top { flex-direction:column; }
  .scp-task-date { justify-items:start; }
  .scp-task-card { grid-template-columns:auto minmax(0,1fr); padding:12px; }
  .scp-user-row { align-items:flex-start; flex-direction:column; }
  .scp-user-row .scp-btn { width:100%; }
  .scp-user-row-actions { width:100%; display:grid; grid-template-columns:1fr 1fr; }
  .scp-user-row-actions form { width:100%; }
  .scp-diagnostic-grid { grid-template-columns:1fr; }
}

@media (max-width: 520px) {
  .scp-login-card { padding:20px; }
  .scp-app-header h1 { font-size:25px; }
  .scp-login-card h1 { font-size:26px; }
  .scp-toolbar { grid-template-columns:1fr; }
  .scp-search-form { flex-direction:column; }
  .scp-stat-grid { gap:9px; }
  .scp-stat-card { padding:12px; }
  .scp-stat-card strong { font-size:24px; }
  .scp-task-card { grid-template-columns:auto minmax(0,1fr); align-items:flex-start; }
  .scp-task-check { order:0; width:auto; min-width:28px; padding-top:1px; }
  .scp-task-check form { display:inline-flex; width:auto; margin:0; }
  .scp-check-btn { width:26px; min-width:26px; max-width:26px; height:26px; border-radius:50%; padding:0; display:inline-block; }
}

@media print {
  body * { visibility:hidden !important; }
  .scp-print-area, .scp-print-area * { visibility:visible !important; }
  .scp-print-area {
    position:absolute !important;
    left:0 !important;
    top:0 !important;
    width:100% !important;
    box-shadow:none !important;
    border:0 !important;
  }
  .scp-toolbar,
  .scp-app-header,
  .scp-stat-grid,
  .scp-task-actions,
  .scp-check-btn,
  .scp-mobile-tabs { display:none !important; }
  .scp-task-card { break-inside:avoid; box-shadow:none; }
}

/* v1.1.2 - modalità smartphone: pagina pulita e riepiloghi compatti */
body.scp-todo-mobile-clean {
  margin:0 !important;
  padding:0 !important;
  background:var(--scp-bg) !important;
  overflow-x:hidden !important;
}

body.scp-todo-mobile-clean > *:not(.scp-todo-keep),
body.scp-todo-mobile-clean .scp-todo-keep > *:not(.scp-todo-keep):not(.scp-todo-app) {
  display:none !important;
}

body.scp-todo-mobile-clean .scp-todo-keep {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
}

body.scp-todo-mobile-clean .scp-todo-app {
  width:100% !important;
  max-width:none !important;
  min-height:100vh !important;
  margin:0 !important;
  padding:8px !important;
}

body.scp-todo-mobile-clean .site-header,
body.scp-todo-mobile-clean .site-footer,
body.scp-todo-mobile-clean .entry-header,
body.scp-todo-mobile-clean .page-header,
body.scp-todo-mobile-clean .wp-block-template-part,
body.scp-todo-mobile-clean .wp-site-blocks > header,
body.scp-todo-mobile-clean .wp-site-blocks > footer,
body.scp-todo-mobile-clean .elementor-location-header,
body.scp-todo-mobile-clean .elementor-location-footer,
body.scp-todo-mobile-clean .main-header-bar,
body.scp-todo-mobile-clean #masthead,
body.scp-todo-mobile-clean #colophon {
  display:none !important;
}

@media (max-width: 820px) {
  .scp-stat-grid {
    display:grid !important;
    grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
    gap:5px !important;
    margin-bottom:10px !important;
  }
  .scp-stat-card {
    min-width:0 !important;
    padding:8px 4px !important;
    border-radius:13px !important;
    gap:3px !important;
    text-align:center !important;
    align-items:center !important;
    justify-items:center !important;
  }
  .scp-stat-card span {
    font-size:10px !important;
    line-height:1.05 !important;
    white-space:nowrap !important;
  }
  .scp-stat-card strong {
    font-size:20px !important;
    line-height:1 !important;
  }
  .scp-app-header {
    margin-bottom:10px !important;
  }
  .scp-toolbar {
    margin-bottom:10px !important;
  }
  .scp-panel-title {
    align-items:flex-start;
  }
}

@media (max-width: 380px) {
  .scp-stat-card span { font-size:9px !important; }
  .scp-stat-card strong { font-size:18px !important; }
}


/* v1.1.3 - elenco attività più sintetico e senza dati assegnatario/creatore */
.scp-task-card { padding:11px 12px; gap:10px; }
.scp-card-top h3 { font-size:17px; line-height:1.18; }
.scp-badges { margin-top:6px; gap:5px; }
.scp-badge { padding:4px 8px; font-size:11px; }
.scp-task-actions { margin-top:9px; }
.scp-task-meta { display:none !important; }

@media (max-width: 820px) {
  .scp-task-card { padding:10px; border-radius:16px; gap:8px; }
  .scp-card-top { gap:6px; }
  .scp-card-top h3 { font-size:16px; }
  .scp-task-date strong { font-size:14px; }
  .scp-task-date { font-size:12px; }
  .scp-task-desc-short { font-size:12.5px; margin-top:6px; }
  .scp-badge { font-size:10.5px; padding:4px 7px; }
  .scp-task-actions .scp-btn { min-height:32px; padding:6px 10px; font-size:12px; }
}

/* v1.1.5 - sotto-attività spuntabili dentro l'attività principale */
.scp-section-label {
  font-weight:800;
  color:#27364c;
  margin-bottom:2px;
}
.scp-subtasks-form {
  border:1px solid var(--scp-border);
  border-radius:18px;
  padding:14px;
  background:#fbfdff;
  display:grid;
  gap:10px;
}
.scp-subtasks-form .scp-small-note {
  margin:0 0 4px;
}
.scp-subtasks-editor {
  display:grid;
  gap:8px;
}
.scp-subtask-edit-row {
  display:grid;
  grid-template-columns:34px minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
}
.scp-subtask-edit-check {
  width:34px;
  height:34px;
  display:flex !important;
  align-items:center;
  justify-content:center;
  border:1px solid var(--scp-border);
  border-radius:12px;
  background:#fff;
}
.scp-subtask-edit-check input {
  width:18px !important;
  min-height:18px !important;
  height:18px !important;
  padding:0 !important;
}
.scp-subtask-list-wrap {
  margin-top:9px;
  border-top:1px dashed rgba(99,112,131,.35);
  padding-top:8px;
}
.scp-subtask-progress {
  font-size:12px;
  font-weight:800;
  color:var(--scp-muted);
  margin-bottom:6px;
}
.scp-subtask-list {
  display:grid;
  gap:5px;
}
.scp-subtask-item {
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  gap:7px;
  align-items:center;
  border:1px solid rgba(220,228,239,.9);
  background:rgba(255,255,255,.78);
  border-radius:12px;
  padding:5px 7px;
}
.scp-subtask-toggle {
  width:22px;
  height:22px;
  border-radius:7px;
  border:2px solid var(--scp-blue);
  background:#fff;
  cursor:pointer;
  position:relative;
}
.scp-subtask-toggle.checked {
  background:var(--scp-green);
  border-color:var(--scp-green);
}
.scp-subtask-toggle.checked:after {
  content:'✓';
  color:#fff;
  font-weight:900;
  position:absolute;
  left:4px;
  top:-2px;
  font-size:15px;
}
.scp-subtask-text {
  appearance:none;
  border:0;
  background:transparent;
  text-align:left;
  padding:0;
  color:#28384d;
  font-size:13px;
  line-height:1.25;
  cursor:pointer;
  overflow-wrap:anywhere;
}
.scp-subtask-item.is-done .scp-subtask-text {
  color:var(--scp-muted);
  text-decoration:line-through;
}

.scp-task-card.scp-hide-done-subtasks .scp-subtask-item.is-done {
  display:none;
}
.scp-task-card.scp-hide-done-subtasks .scp-subtask-progress:after {
  content:' · completate nascoste';
  color:var(--scp-green);
  font-weight:800;
}

@media (max-width: 820px) {
  .scp-subtasks-form { padding:11px; border-radius:16px; }
  .scp-subtask-edit-row { grid-template-columns:30px minmax(0,1fr); }
  .scp-subtask-edit-row [data-scp-remove-subtask] { grid-column:1 / -1; width:100%; min-height:32px; }
  .scp-subtask-list-wrap { margin-top:7px; padding-top:7px; }
  .scp-subtask-text { font-size:12.5px; }
}

/* v1.2.0 - archivio società e adempimenti standard */
.scp-archive-grid {
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
}
.scp-archive-box {
  border:1px solid var(--scp-border);
  border-radius:20px;
  background:#fbfdff;
  padding:16px;
}
.scp-archive-box h3 {
  margin:0 0 12px;
  font-size:18px;
  color:#1d3148;
}
.scp-checkbox-grid {
  display:grid;
  gap:7px;
  margin-top:8px;
  max-height:220px;
  overflow:auto;
  border:1px solid var(--scp-border);
  background:#fff;
  border-radius:16px;
  padding:10px;
}
.scp-check-line {
  display:grid !important;
  grid-template-columns:24px minmax(0,1fr);
  align-items:center;
  gap:8px !important;
  font-weight:600 !important;
  font-size:13px !important;
  color:#27364c !important;
  padding:5px 4px;
  border-radius:10px;
}
.scp-check-line:hover { background:#f2f6fb; }
.scp-check-line input {
  width:18px !important;
  height:18px !important;
  min-height:18px !important;
  padding:0 !important;
}
.scp-check-line.is-disabled,
.scp-mini-row.is-disabled {
  opacity:.55;
}
.scp-mini-list {
  display:grid;
  gap:8px;
  margin-top:14px;
}
.scp-mini-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  border:1px solid var(--scp-border);
  background:#fff;
  border-radius:16px;
  padding:10px;
}
.scp-mini-row strong,
.scp-mini-row span {
  display:block;
}
.scp-mini-row span {
  color:var(--scp-muted);
  font-size:12px;
  margin-top:2px;
}
.scp-standard-select select {
  border-color:#b8d6ee;
  background:#f7fbff;
}
.scp-standard-select small {
  line-height:1.35;
}

@media (max-width: 900px) {
  .scp-archive-grid { grid-template-columns:1fr; }
}
@media (max-width: 820px) {
  .scp-archive-box { padding:12px; border-radius:17px; }
  .scp-checkbox-grid { max-height:190px; }
  .scp-mini-row { align-items:flex-start; flex-direction:column; }
  .scp-mini-row .scp-btn { width:100%; }
}

.scp-subtasks-tools {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin: 8px 0 10px;
}

.scp-subtasks-tools .scp-small-note {
    margin: 0;
    flex: 1 1 220px;
}

/* Allegati attività e sotto-attività */
.scp-attachments-form,
.scp-subtask-attachments {
  border:1px dashed var(--scp-border);
  background:#f8fbff;
  border-radius:16px;
  padding:12px;
}

.scp-attachments-form input[type="file"],
.scp-subtask-attachments input[type="file"] {
  width:100%;
  border:1px solid var(--scp-border);
  border-radius:12px;
  padding:9px;
  background:#fff;
  font-size:13px;
}

.scp-subtask-attachments {
  grid-column:1 / -1;
  margin-top:2px;
  padding:9px;
}

.scp-attachment-list {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:9px;
}

.scp-attachment-list-form {
  flex-direction:column;
  gap:6px;
}

.scp-attachment-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  border:1px solid var(--scp-border);
  background:#fff;
  border-radius:12px;
  padding:8px 10px;
  font-size:13px;
}

.scp-attachment-row a,
.scp-attachment-chip {
  color:var(--scp-blue-dark);
  font-weight:700;
}

.scp-attachment-row small {
  color:var(--scp-muted);
  font-weight:400;
  margin-left:4px;
}

.scp-attachment-delete {
  white-space:nowrap;
  color:var(--scp-muted);
  font-size:12px;
}

.scp-attachment-chip {
  display:inline-flex;
  align-items:center;
  max-width:100%;
  border:1px solid rgba(31,95,139,.20);
  background:rgba(255,255,255,.70);
  border-radius:999px;
  padding:5px 9px;
  font-size:12px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.scp-attachment-chip:before {
  content:'📎';
  margin-right:4px;
  font-size:12px;
}

.scp-subtask-attachment-links {
  grid-column:1 / -1;
  margin:2px 0 0 36px;
}

.scp-subtask-attachment-links .scp-attachment-chip {
  font-size:11.5px;
  padding:4px 8px;
}

@media (max-width: 680px) {
  .scp-attachment-row {
    align-items:flex-start;
    flex-direction:column;
  }
  .scp-subtask-attachment-links {
    margin-left:0;
  }
  .scp-attachment-chip {
    width:100%;
  }
}

/* v1.3.0 - assegnazioni multiple e importazione ultima attività */
.scp-user-pick-wrap {
  border:1px solid var(--scp-border);
  background:#fbfdff;
  border-radius:18px;
  padding:12px;
}
.scp-user-checkbox-grid {
  max-height:150px;
  grid-template-columns:repeat(2, minmax(0, 1fr));
}
.scp-subtask-user-grid {
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:6px;
  padding:8px;
  border:1px solid rgba(220,228,239,.9);
  background:#fff;
  border-radius:14px;
}
.scp-check-line-mini {
  font-size:12px !important;
  padding:3px 4px;
  gap:5px !important;
  grid-template-columns:20px minmax(0, 1fr) !important;
}
.scp-check-line-mini input {
  width:16px !important;
  height:16px !important;
  min-height:16px !important;
}
.scp-subtask-edit-row.scp-subtask-new-from-db {
  background:#ecfdf3;
  border:1px solid #86efac;
  border-radius:16px;
  padding:8px;
}
.scp-subtask-edit-row.scp-subtask-new-from-db:before {
  content:'Nuova da database';
  grid-column:1 / -1;
  color:#166534;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.03em;
}
@media (max-width: 820px) {
  .scp-user-checkbox-grid,
  .scp-subtask-user-grid { grid-template-columns:1fr; max-height:180px; }
  .scp-user-pick-wrap { padding:10px; border-radius:16px; }
}
.scp-check-btn.is-static,
.scp-subtask-toggle.is-static {
  cursor:default;
  opacity:.7;
}


/* v1.3.2 - assegnazioni utenti compatte per attività e sotto-attività */
.scp-user-pick-wrap {
  padding:9px 10px;
  border-radius:15px;
}
.scp-user-pick-wrap .scp-section-label {
  margin:0 0 6px;
  font-size:13px;
}
.scp-user-pick-wrap .scp-small-note {
  margin-top:5px;
  font-size:11.5px;
}
.scp-user-checkbox-grid,
.scp-subtask-user-grid {
  display:flex !important;
  flex-wrap:wrap;
  align-items:center;
  align-content:flex-start;
  gap:5px;
  max-height:118px;
  overflow:auto;
  padding:6px;
  border-radius:13px;
}
.scp-subtask-user-grid {
  grid-column:1 / -1;
  background:#fbfdff;
  border-style:dashed;
  max-height:88px;
}
.scp-user-chip,
.scp-check-line-mini.scp-user-chip {
  display:inline-flex !important;
  grid-template-columns:none !important;
  align-items:center;
  width:auto !important;
  max-width:160px;
  min-height:26px;
  gap:5px !important;
  padding:4px 8px 4px 6px !important;
  border:1px solid rgba(192,205,222,.9);
  border-radius:999px;
  background:#fff;
  font-size:12px !important;
  line-height:1.1;
  white-space:nowrap;
  cursor:pointer;
}
.scp-check-line-mini.scp-user-chip {
  max-width:132px;
  min-height:23px;
  padding:3px 7px 3px 5px !important;
  font-size:11.5px !important;
}
.scp-user-chip:hover {
  background:#f2f7ff;
  border-color:#9fb8d6;
}
.scp-user-chip input,
.scp-check-line-mini.scp-user-chip input {
  flex:0 0 auto;
  width:14px !important;
  height:14px !important;
  min-height:14px !important;
  margin:0 !important;
}
.scp-check-line-mini.scp-user-chip input {
  width:13px !important;
  height:13px !important;
  min-height:13px !important;
}
.scp-user-chip span {
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
}
.scp-user-chip input:checked + span {
  color:#14532d;
  font-weight:800;
}
.scp-subtask-edit-row {
  gap:6px;
}
.scp-subtask-remove-btn {
  min-width:34px !important;
  width:34px;
  height:34px;
  padding:0 !important;
  border-radius:50% !important;
  font-size:20px !important;
  line-height:1 !important;
  font-weight:800 !important;
}
.scp-subtask-attachments {
  grid-column:1 / -1;
}
@media (max-width: 820px) {
  .scp-user-checkbox-grid,
  .scp-subtask-user-grid {
    grid-template-columns:none !important;
    max-height:96px;
    padding:5px;
    gap:4px;
  }
  .scp-subtask-user-grid { max-height:78px; }
  .scp-user-chip,
  .scp-check-line-mini.scp-user-chip {
    max-width:46vw;
    min-height:24px;
    padding:3px 7px 3px 5px !important;
  }
  .scp-check-line-mini.scp-user-chip {
    max-width:41vw;
    font-size:11px !important;
  }
  .scp-subtask-edit-row {
    grid-template-columns:30px minmax(0,1fr) 34px !important;
  }
  .scp-subtask-edit-row [data-scp-remove-subtask] {
    grid-column:auto !important;
    width:34px !important;
    min-height:34px !important;
  }
}

/* v1.3.3 - elenchi archivio richiamabili da pulsante */
.scp-archive-actions {
  align-items:center;
}
.scp-archive-actions .scp-btn-secondary {
  background:var(--scp-green);
  color:#fff;
}
.scp-archive-actions .scp-btn-secondary.is-active {
  background:#138a48;
}
.scp-mini-list.scp-archive-list-collapsed {
  display:none;
}
@media (max-width: 820px) {
  .scp-archive-actions {
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:8px;
  }
  .scp-archive-actions .scp-btn {
    width:100%;
    min-width:0;
    padding-left:8px;
    padding-right:8px;
  }
}
@media (max-width: 420px) {
  .scp-archive-actions {
    grid-template-columns:1fr;
  }
}

/* v1.3.4 - privacy sotto-attività e assegnazione generale facoltativa */
.scp-task-general-assignment {
  display:block;
  margin:0;
}
.scp-task-general-assignment summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  cursor:pointer;
  font-weight:800;
  color:#25415f;
  list-style:none;
}
.scp-task-general-assignment summary::-webkit-details-marker { display:none; }
.scp-task-general-assignment summary:after {
  content:'+';
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  border-radius:50%;
  background:#eaf2ff;
  color:#245c9f;
  font-weight:900;
}
.scp-task-general-assignment[open] summary:after { content:'−'; }
.scp-task-general-assignment summary span {
  margin-left:auto;
  font-size:11px;
  color:var(--scp-muted);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.scp-task-general-assignment .scp-user-checkbox-grid {
  margin-top:8px;
}
.scp-subtask-progress {
  color:#23415f;
}
@media (max-width: 820px) {
  .scp-task-general-assignment summary {
    font-size:13px;
  }
  .scp-task-general-assignment summary span {
    display:none;
  }
}

/* v1.3.8 - descrizione sotto-attività senza placeholder visibile */
.scp-subtask-fields {
  display:grid;
  gap:5px;
  min-width:0;
}
.scp-subtask-fields textarea {
  min-height:38px;
  resize:vertical;
  font-size:12.5px;
  padding:8px 10px;
}
.scp-subtask-toggle-form {
  margin:0;
  display:flex;
  align-items:center;
}
.scp-subtask-quick-detail,
.scp-subtask-static-detail {
  min-width:0;
}
.scp-subtask-company {
  display:inline;
  color:#28384d;
  font-size:13px;
  line-height:1.25;
  overflow-wrap:anywhere;
}

.scp-subtask-item.is-manual-client {
  border-color:rgba(22,101,52,.38);
  background:linear-gradient(90deg, rgba(220,252,231,.95), rgba(255,255,255,.96));
}
.scp-subtask-item.is-manual-client .scp-subtask-company {
  color:#166534;
}
.scp-quick-subtask-form input.is-manual-client,
.scp-subtask-fields input.is-manual-client {
  border-color:#22c55e;
  background:#f0fdf4;
  box-shadow:0 0 0 2px rgba(34,197,94,.12);
}
.scp-subtask-inline-detail,
.scp-subtask-static-inline {
  min-width:0;
  display:flex;
  align-items:center;
  gap:5px;
  flex-wrap:nowrap;
  width:100%;
}
.scp-subtask-inline-separator {
  color:var(--scp-muted);
  font-weight:700;
  flex:0 0 auto;
}
.scp-subtask-inline-detail textarea {
  flex:1 1 150px;
  min-width:90px;
  width:auto;
  min-height:28px;
  max-height:50px;
  resize:vertical;
  border:1px solid rgba(220,228,239,.95);
  border-radius:10px;
  padding:5px 8px;
  background:#fff;
  color:#374151;
  font-size:12px;
  line-height:1.25;
}
.scp-subtask-autosave-note {
  flex:0 0 auto;
  color:var(--scp-muted);
  font-size:10.5px;
  line-height:1;
  white-space:nowrap;
  padding:0 2px;
}
.scp-subtask-quick-detail.is-autosaving textarea {
  opacity:.72;
}
@media (max-width: 620px) {
  .scp-subtask-autosave-note {
    display:none;
  }
}
.scp-subtask-detail-static {
  display:inline;
  color:var(--scp-muted);
  font-size:12px;
  line-height:1.25;
  overflow-wrap:anywhere;
  min-width:0;
}
.scp-subtask-item.is-done .scp-subtask-company,
.scp-subtask-item.is-done .scp-subtask-detail-static,
.scp-subtask-item.is-done .scp-subtask-inline-detail textarea {
  color:var(--scp-muted);
  text-decoration:line-through;
}
.scp-subtask-item.is-done .scp-subtask-inline-detail textarea {
  background:#f8fafc;
}
@media (max-width: 820px) {
  .scp-subtask-inline-detail,
  .scp-subtask-static-inline {
    gap:4px;
  }
  .scp-subtask-company {
    font-size:12.5px;
  }
  .scp-subtask-inline-detail textarea {
    flex-basis:95px;
    min-width:72px;
    font-size:11.5px;
    padding:4px 7px;
  }
  .scp-subtask-detail-save {
    padding:4px 7px !important;
  }
}


/* v1.3.9 - nota/descrizione attività più evidente */
.scp-task-card .scp-task-desc {
  margin:10px 0 0;
}
.scp-task-card .scp-task-desc-short {
  font-size:17px;
  line-height:1.25;
  font-weight:800;
  color:#12263f;
  letter-spacing:-0.01em;
}
.scp-task-card.is-done .scp-task-desc-short {
  text-decoration:line-through;
}
@media (max-width: 700px) {
  .scp-task-card .scp-task-desc-short {
    font-size:15.5px;
    line-height:1.24;
  }
}

/* v1.4.2 - visualizzazione smartphone tipo app con menu ingranaggio */
.scp-mobile-app-title,
.scp-mobile-tools-title,
.scp-mobile-logout-form,
.scp-stat-settings {
  display:none;
}

@media (max-width: 820px) {
  .scp-mobile-app-title {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    width:100%;
    margin:2px 0 8px;
    padding:9px 10px;
    border:1px solid var(--scp-border);
    border-radius:16px;
    background:linear-gradient(135deg, #ffffff 0%, #eef7ff 100%);
    box-shadow:0 8px 22px rgba(17,42,70,.08);
    color:#12314d;
    font-size:14px;
    line-height:1.1;
    font-weight:800;
    text-align:center;
    letter-spacing:-.01em;
  }
  .scp-mobile-app-title strong {
    color:var(--scp-blue);
    font-weight:900;
  }
  .scp-app-header {
    display:none !important;
  }
  .scp-stat-grid {
    grid-template-columns:repeat(6, minmax(0, 1fr)) !important;
    gap:4px !important;
    margin-bottom:8px !important;
  }
  .scp-stat-card {
    min-height:54px !important;
    padding:6px 2px !important;
    border-radius:12px !important;
  }
  .scp-stat-card span {
    font-size:8.8px !important;
    line-height:1 !important;
  }
  .scp-stat-card strong {
    font-size:18px !important;
  }
  .scp-stat-settings {
    display:grid !important;
    cursor:pointer;
    font-family:inherit;
    text-align:center;
  }
  .scp-stat-settings strong {
    font-size:19px !important;
    color:var(--scp-green) !important;
  }
  .scp-stat-settings.is-active,
  .scp-stat-settings:focus {
    outline:none;
    border-color:var(--scp-green);
    box-shadow:0 10px 28px rgba(47,143,91,.18);
  }
  .scp-toolbar[data-scp-mobile-tools] {
    display:none !important;
    margin:0 0 10px !important;
    padding:10px;
    border:1px solid var(--scp-border);
    border-radius:16px;
    background:#fff;
    box-shadow:0 10px 26px rgba(17,42,70,.08);
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:8px !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open {
    display:grid !important;
  }
  .scp-mobile-tools-title {
    display:flex;
    grid-column:1 / -1;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    margin-bottom:2px;
    color:#12314d;
  }
  .scp-mobile-tools-title strong {
    font-size:14px;
  }
  .scp-mobile-tools-title {
    justify-content:center;
  }
  .scp-toolbar[data-scp-mobile-tools] .scp-btn {
    width:100% !important;
    min-height:38px;
    padding:8px 9px;
    font-size:12px;
  }
  .scp-search-form {
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) auto;
    gap:8px !important;
    min-width:0 !important;
  }
  .scp-search-form .scp-search {
    min-width:0;
    height:38px;
  }
  .scp-mobile-logout-form {
    display:block;
    grid-column:1 / -1;
  }
  .scp-panel.scp-print-area {
    margin-top:0 !important;
  }
}

@media (max-width: 380px) {
  .scp-mobile-app-title {
    font-size:12.5px;
    padding:8px 6px;
  }
  .scp-stat-card span {
    font-size:8px !important;
  }
  .scp-stat-card strong {
    font-size:16px !important;
  }
  .scp-stat-settings strong {
    font-size:17px !important;
  }
  .scp-toolbar[data-scp-mobile-tools] {
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    padding:8px;
  }
}


/* v1.4.3 - attività con scadenza oltre 30 giorni compatte */
.scp-task-card.scp-future-compact:not(.is-expanded) {
  grid-template-columns:minmax(0, 1fr);
  padding:10px 12px;
}
.scp-task-card.scp-future-compact:not(.is-expanded) .scp-task-check,
.scp-task-card.scp-future-compact:not(.is-expanded) .scp-future-full-detail {
  display:none !important;
}
.scp-task-card.scp-future-compact .scp-future-toggle {
  margin-top:8px;
  width:auto;
  justify-self:start;
}
.scp-task-card.scp-future-compact:not(.is-expanded) .scp-card-top {
  align-items:flex-start;
}
.scp-task-card.scp-future-compact:not(.is-expanded) .scp-task-desc-short {
  margin-top:7px;
}
.scp-task-card.scp-future-compact.is-expanded .scp-future-toggle {
  background:#edf3f8;
  color:#1d3148;
}
@media (max-width: 820px) {
  .scp-task-card.scp-future-compact:not(.is-expanded) {
    padding:9px 10px;
    gap:6px;
  }
  .scp-task-card.scp-future-compact .scp-future-toggle {
    min-height:32px;
    padding:6px 10px;
    font-size:12px;
  }
}

/* v1.4.4 - pannello scelta attività da stampare */
.scp-print-options[hidden] {
  display:none !important;
}
.scp-print-options {
  margin:12px 0 14px;
  padding:14px;
  border:1px solid var(--scp-border);
  border-radius:18px;
  background:#ffffff;
  box-shadow:0 12px 26px rgba(17,42,70,.08);
}
.scp-print-options-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:12px;
}
.scp-print-options-head strong {
  display:block;
  color:#12314d;
  font-size:17px;
}
.scp-print-options-head span {
  display:block;
  margin-top:2px;
  color:var(--scp-muted);
  font-size:13px;
}
.scp-print-filter-actions,
.scp-print-run-actions {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:10px 0;
}
.scp-print-check-list {
  display:grid;
  gap:7px;
  margin:10px 0 12px;
  max-height:260px;
  overflow:auto;
  padding-right:4px;
}
.scp-print-check-row {
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
  align-items:center;
  gap:9px;
  padding:8px 10px;
  border:1px solid var(--scp-border);
  border-radius:13px;
  background:#f8fbfd;
  cursor:pointer;
}
.scp-print-check-row input {
  width:17px;
  height:17px;
  accent-color:var(--scp-green);
}
.scp-print-check-title {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:700;
  color:#12314d;
}
.scp-print-check-meta {
  color:var(--scp-muted);
  font-size:12px;
  white-space:nowrap;
}
@media (max-width: 620px) {
  .scp-print-options {
    margin:10px 0;
    padding:10px;
    border-radius:15px;
  }
  .scp-print-options-head {
    align-items:center;
  }
  .scp-print-filter-actions {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:7px;
  }
  .scp-print-filter-actions .scp-btn,
  .scp-print-run-actions .scp-btn {
    width:100%;
  }
  .scp-print-run-actions {
    display:grid;
    grid-template-columns:1fr;
  }
  .scp-print-check-row {
    grid-template-columns:auto minmax(0, 1fr);
  }
  .scp-print-check-meta {
    grid-column:2;
    white-space:normal;
  }
}
@media print {
  .scp-print-options { display:none !important; }
  body.scp-print-selection-active .scp-task-card:not(.scp-print-selected) { display:none !important; }
  body.scp-print-selection-active .scp-task-card.scp-print-selected { display:grid !important; }
}


/* v1.4.5 - stampa più compatta e senza pagine con sola intestazione */
.scp-subtask-detail-print {
  display:none;
}

@media print {
  @page {
    size:A4;
    margin:7mm 7mm 8mm;
  }

  html,
  body {
    margin:0 !important;
    padding:0 !important;
    background:#ffffff !important;
  }

  body * {
    visibility:hidden !important;
  }

  .scp-print-area,
  .scp-print-area * {
    visibility:visible !important;
  }

  .scp-print-area {
    position:static !important;
    left:auto !important;
    top:auto !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    box-shadow:none !important;
    background:#ffffff !important;
  }

  .scp-print-area > .scp-panel-title,
  .scp-print-area > .scp-mobile-tabs,
  .scp-print-options,
  .scp-toolbar,
  .scp-app-header,
  .scp-mobile-app-title,
  .scp-stat-grid,
  .scp-task-actions,
  .scp-future-toggle,
  .scp-subtask-autosave-note,
  .scp-attachment-links,
  .scp-subtask-attachment-links,
  .scp-badges .scp-btn,
  .scp-task-check,
  .scp-check-btn {
    display:none !important;
  }

  .scp-task-list {
    display:block !important;
    gap:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  .scp-task-card,
  body.scp-print-selection-active .scp-task-card.scp-print-selected {
    display:block !important;
    break-inside:auto !important;
    page-break-inside:auto !important;
    margin:0 0 4mm 0 !important;
    padding:4mm 4mm 3mm 4mm !important;
    border:1px solid #d8dee8 !important;
    border-left:4px solid #999 !important;
    border-radius:4mm !important;
    box-shadow:none !important;
    background:#ffffff !important;
    opacity:1 !important;
  }

  body.scp-print-selection-active .scp-task-card:not(.scp-print-selected) {
    display:none !important;
  }

  .scp-task-card.scp-tone-green { border-left-color:#22a65a !important; }
  .scp-task-card.scp-tone-yellow { border-left-color:#e5a800 !important; }
  .scp-task-card.scp-tone-red,
  .scp-task-card.is-overdue { border-left-color:#d93025 !important; }

  .scp-card-top {
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:8mm !important;
    margin:0 0 1.5mm !important;
    padding:0 !important;
    break-after:avoid !important;
    page-break-after:avoid !important;
  }

  .scp-card-top h3 {
    margin:0 !important;
    font-size:12pt !important;
    line-height:1.12 !important;
    color:#111827 !important;
  }

  .scp-task-date {
    display:block !important;
    min-width:23mm !important;
    text-align:right !important;
    font-size:9pt !important;
    line-height:1.1 !important;
    color:#111827 !important;
    white-space:nowrap !important;
  }

  .scp-task-date strong {
    font-size:10pt !important;
  }

  .scp-task-desc,
  .scp-task-desc-short {
    margin:1mm 0 1.5mm !important;
    font-size:10.2pt !important;
    line-height:1.18 !important;
    font-weight:800 !important;
    color:#111827 !important;
  }

  .scp-future-full-detail,
  .scp-task-card.scp-future-compact:not(.is-expanded) .scp-future-full-detail {
    display:block !important;
  }

  .scp-badges {
    display:flex !important;
    gap:3mm !important;
    margin:1mm 0 1.5mm !important;
  }

  .scp-badge {
    padding:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    color:#374151 !important;
    font-size:8pt !important;
    line-height:1.1 !important;
  }

  .scp-subtask-list-wrap {
    margin-top:1.5mm !important;
    padding-top:1.5mm !important;
    border-top:1px solid #e5e7eb !important;
  }

  .scp-subtask-progress {
    margin:0 0 1mm !important;
    font-size:8.5pt !important;
    line-height:1.1 !important;
    color:#374151 !important;
  }

  .scp-subtask-list {
    display:block !important;
    gap:0 !important;
  }

  .scp-subtask-item {
    display:grid !important;
    grid-template-columns:4.5mm minmax(0, 1fr) !important;
    gap:2mm !important;
    align-items:start !important;
    margin:0 !important;
    padding:.8mm 0 !important;
    border:0 !important;
    border-bottom:1px dotted #e5e7eb !important;
    border-radius:0 !important;
    background:transparent !important;
    break-inside:avoid !important;
    page-break-inside:avoid !important;
  }

  .scp-subtask-item:last-child {
    border-bottom:0 !important;
  }

  .scp-subtask-toggle-form,
  .scp-subtask-quick-detail {
    margin:0 !important;
    padding:0 !important;
  }

  .scp-subtask-toggle {
    display:inline-block !important;
    width:3.5mm !important;
    height:3.5mm !important;
    min-width:3.5mm !important;
    border-radius:1mm !important;
    border:1px solid #6b7280 !important;
    background:#ffffff !important;
    position:relative !important;
    margin:.2mm 0 0 !important;
    padding:0 !important;
  }

  .scp-subtask-toggle.checked {
    background:#ffffff !important;
    border-color:#374151 !important;
  }

  .scp-subtask-toggle.checked:after {
    content:'✓' !important;
    color:#111827 !important;
    left:.6mm !important;
    top:-1.2mm !important;
    font-size:9pt !important;
    line-height:1 !important;
  }

  .scp-subtask-inline-detail,
  .scp-subtask-static-inline {
    display:block !important;
    min-width:0 !important;
    width:100% !important;
    line-height:1.15 !important;
  }

  .scp-subtask-company {
    display:inline !important;
    font-size:8.7pt !important;
    line-height:1.15 !important;
    font-weight:800 !important;
    color:#111827 !important;
  }

  .scp-subtask-inline-separator {
    display:inline !important;
    font-size:8.5pt !important;
    line-height:1.15 !important;
    color:#6b7280 !important;
  }

  .scp-subtask-inline-separator.is-empty {
    display:none !important;
  }

  .scp-subtask-inline-detail textarea {
    display:none !important;
  }

  .scp-subtask-detail-print:not(.is-empty),
  .scp-subtask-detail-static {
    display:inline !important;
    font-size:8.5pt !important;
    line-height:1.15 !important;
    color:#374151 !important;
  }

  .scp-subtask-item.is-done .scp-subtask-company,
  .scp-subtask-item.is-done .scp-subtask-detail-print,
  .scp-subtask-item.is-done .scp-subtask-detail-static {
    color:#6b7280 !important;
    text-decoration:line-through !important;
  }
}

/* v1.5.0 - opzioni facoltative attività: cliente, assegnazione generale e allegati */
.scp-optional-task-box {
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:12px;
  padding:12px;
  border:1px solid var(--scp-border);
  border-radius:16px;
  background:#fbfdff;
}
.scp-optional-task-box .scp-section-label {
  margin-bottom:6px;
}
.scp-task-company-select select {
  width:100%;
}
@media (min-width: 821px) {
  .scp-optional-task-box {
    grid-template-columns:1fr 1fr;
  }
  .scp-optional-task-box .scp-attachments-form {
    grid-column:1 / -1;
  }
}
@media (max-width: 820px) {
  .scp-task-general-assignment summary {
    align-items:flex-start;
  }
}

/* v1.5.2 - cliente attività senza sotto-attività */
.scp-task-client-detail-wrap {
  margin-top:7px;
}
.scp-task-client-detail-item .scp-subtask-toggle.is-static {
  cursor:default;
  opacity:.55;
  border-color:var(--scp-blue);
}
.scp-task-company-detail textarea {
  min-height:46px;
}
@media (max-width: 820px) {
  .scp-task-client-detail-wrap {
    margin-top:6px;
  }
}

/* v1.5.3 - comandi rapidi admin su scadenza e stato */
.scp-inline-due-form,
.scp-inline-status-form {
  display:inline-flex;
  align-items:center;
  margin:0;
  padding:0;
}
.scp-inline-due-button {
  border:0;
  background:transparent;
  color:inherit;
  padding:0;
  margin:0;
  display:grid;
  justify-items:end;
  gap:2px;
  cursor:pointer;
  font:inherit;
}
.scp-inline-due-button:hover strong,
.scp-inline-due-button:focus strong { text-decoration:underline; }
.scp-inline-due-input {
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  pointer-events:none;
}
.scp-inline-due-input.is-open {
  position:static;
  width:auto;
  height:auto;
  opacity:1;
  pointer-events:auto;
  margin-left:6px;
  max-width:150px;
  font-size:12px;
  padding:4px 6px;
  border:1px solid #cbd5e1;
  border-radius:8px;
  background:#fff;
}
.scp-status-select {
  border:0;
  outline:0;
  cursor:pointer;
  appearance:auto;
  -webkit-appearance:auto;
  max-width:160px;
}
.scp-inline-status-form .scp-badge { line-height:1.1; }
.scp-status-select.scp-status-aperta,
.scp-status-select.scp-status-in_lavorazione,
.scp-status-select.scp-status-completata,
.scp-status-select.scp-status-annullata {
  font-weight:800;
  min-width:118px;
}
.scp-status-select.scp-status-annullata option { color:#111827; background:#ffffff; }
@media print {
  .scp-inline-due-input { display:none !important; }
  .scp-inline-due-button { display:inline !important; text-align:right !important; }
  .scp-status-select { border:0 !important; background:transparent !important; color:#374151 !important; padding:0 !important; appearance:none !important; -webkit-appearance:none !important; }
}

/* v1.6.0 - Archivio / log / backup */
.scp-admin-tools-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
.scp-admin-tool-box {
    border: 1px solid rgba(15, 23, 42, .10);
    border-radius: 16px;
    background: rgba(255,255,255,.86);
    padding: 14px;
}
.scp-admin-tool-box h3 {
    margin: 0 0 8px;
    font-size: 1.02rem;
}
.scp-admin-tool-box-wide {
    grid-column: 1 / -1;
}
.scp-inline-admin-form {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
}
.scp-inline-admin-form label {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: 0;
}
.scp-inline-admin-form input[type="number"] {
    width: 90px;
}
.scp-admin-compact-list {
    margin-top: 12px;
    max-height: 260px;
    overflow: auto;
}
.scp-log-list {
    display: grid;
    gap: 6px;
    max-height: 320px;
    overflow: auto;
}
.scp-log-row {
    display: grid;
    grid-template-columns: 120px 160px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    padding: 8px 10px;
    border: 1px solid rgba(15,23,42,.08);
    border-radius: 12px;
    background: rgba(248,250,252,.85);
    font-size: .9rem;
}
.scp-log-row em {
    font-style: normal;
    color: #334155;
}
@media (max-width: 760px) {
    .scp-admin-tools-grid {
        grid-template-columns: 1fr;
    }
    .scp-log-row {
        grid-template-columns: 1fr;
        gap: 2px;
    }
    .scp-inline-admin-form,
    .scp-inline-admin-form label {
        align-items: stretch;
        flex-direction: column;
    }
}

/* v1.7.0 - fase 2 */
.scp-log-details summary{display:inline-flex;cursor:pointer;list-style:none;margin-bottom:10px}.scp-log-details summary::-webkit-details-marker{display:none}.scp-log-list-scroll{max-height:320px;overflow:auto;border:1px solid rgba(15,23,42,.10);border-radius:14px;background:#fff}.scp-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.scp-dashboard-grid h4{margin:0 0 8px;font-size:14px}.scp-dashboard-scroll{max-height:260px;overflow:auto;border:1px solid rgba(15,23,42,.10);border-radius:14px;background:#fff}.scp-dashboard-row{display:grid;grid-template-columns:minmax(130px,1fr) auto auto auto;gap:8px;align-items:center;padding:8px 10px;border-bottom:1px solid rgba(15,23,42,.08);font-size:12px}.scp-dashboard-row:last-child{border-bottom:0}.scp-dashboard-row span{white-space:nowrap;color:#475569}.scp-recurring-form{margin-top:10px}.scp-notification-list{display:grid;gap:8px;max-height:360px;overflow:auto}.scp-notification-row{padding:10px 12px;border:1px solid rgba(15,23,42,.10);border-radius:14px;background:#fff}.scp-notification-row.is-unread{border-color:#0f766e;background:#ecfdf5}.scp-notification-row strong{display:block;font-size:14px}.scp-notification-row span{display:block;font-size:11px;color:#64748b;margin-top:2px}.scp-notification-row p{margin:6px 0 0;font-size:13px;color:#334155}@media(max-width:820px){.scp-dashboard-grid{grid-template-columns:1fr}.scp-dashboard-row{grid-template-columns:1fr auto;gap:4px 8px}.scp-dashboard-row span{font-size:11px}.scp-log-list-scroll,.scp-dashboard-scroll,.scp-notification-list{max-height:260px}}

/* v1.7.1 - import clienti spostato in Clienti / adempimenti */
.scp-import-clients-box {
  margin-bottom:16px;
}
.scp-panel-title-compact {
  align-items:center;
  margin-bottom:6px;
}
.scp-panel-title-compact h3 {
  margin:0;
}
[data-scp-archive-list].scp-archive-list-collapsed {
  display:none !important;
}

/* v1.7.5 - aggiunta rapida sotto-attività dalla scheda */
.scp-btn-add-subtask {
  background:#ecfdf3;
  color:#166534;
  border:1px solid #bbf7d0;
  min-height:30px;
  padding:5px 10px;
  font-size:12px;
}
.scp-btn-add-subtask.is-active {
  background:#166534;
  color:#ffffff;
}
.scp-quick-subtask-form {
  margin-top:8px;
  display:grid;
  grid-template-columns:24px minmax(120px, 1.1fr) minmax(120px, 1.2fr) auto;
  gap:6px;
  align-items:center;
  padding:7px;
  border:1px dashed rgba(47,143,91,.45);
  background:rgba(236,253,243,.65);
  border-radius:14px;
}
.scp-quick-subtask-form[hidden] { display:none !important; }
.scp-quick-subtask-form input[type="text"] {
  min-height:34px;
  border:1px solid var(--scp-border);
  border-radius:10px;
  padding:7px 9px;
  font-size:13px;
  background:#ffffff;
  min-width:0;
}
.scp-quick-subtask-check {
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0;
}
.scp-quick-subtask-check input {
  width:20px;
  height:20px;
  margin:0;
  accent-color:var(--scp-green);
}
@media (max-width: 640px) {
  .scp-quick-subtask-form {
    grid-template-columns:24px minmax(0,1fr) auto;
  }
  .scp-quick-subtask-form input[name="detail_description"] {
    grid-column:2 / -1;
  }
  .scp-quick-subtask-form .scp-btn {
    min-height:34px;
    padding:6px 10px;
  }
}
@media print {
  .scp-btn-add-subtask,
  .scp-quick-subtask-form { display:none !important; }
}

/* v1.8.0 - Web app installabile su smartphone */
.scp-btn-install-app {
  position:relative;
}
.scp-btn-install-app.is-ready {
  background:#eef7ff;
  color:#164666;
  border-color:#b9d9f0;
}
.scp-btn-install-app.is-installed,
.scp-btn-install-app:disabled {
  opacity:.75;
  cursor:default;
}
@media (display-mode: standalone) {
  .scp-app-header { display:none !important; }
  .scp-todo-app { padding-top:12px; }
}

/* v1.8.2 - logo e nome app Scadenze */
.scp-stat-card { position:relative; }
.scp-app-badge {
  position:absolute;
  top:-7px;
  right:-7px;
  min-width:20px;
  height:20px;
  padding:0 5px;
  border-radius:999px;
  background:#d92d20;
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  line-height:1;
  font-style:normal;
  font-weight:900;
  box-shadow:0 3px 10px rgba(217,45,32,.35);
  border:2px solid #fff;
  z-index:2;
}
.scp-app-badge[hidden] { display:none !important; }
@media (max-width:820px) {
  .scp-stat-settings .scp-app-badge {
    top:-5px;
    right:-4px;
    min-width:18px;
    height:18px;
    font-size:10px;
    padding:0 4px;
  }
}


/* v1.8.4 - Login persistente */
.scp-remember-login {
  display:flex !important;
  flex-direction:row !important;
  align-items:center;
  gap:8px;
  font-size:13px;
  color:#445;
  margin-top:-4px;
}
.scp-remember-login input {
  width:auto !important;
  min-width:16px;
  height:16px;
  margin:0;
}
.scp-remember-login span { line-height:1.25; }

.scp-btn.is-active,
.scp-btn-install-app.is-installed {
  box-shadow: inset 0 0 0 2px rgba(45, 157, 89, .35);
}


/* v1.8.6 - Dashboard operatore */
.scp-operator-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:12px 0 16px}.scp-operator-kpi{border:1px solid rgba(15,23,42,.10);border-radius:16px;background:#f8fafc;padding:12px;text-align:center}.scp-operator-kpi span{display:block;font-size:12px;color:#475569;font-weight:700}.scp-operator-kpi strong{display:block;font-size:24px;line-height:1.1;color:#0f172a;margin-top:4px}.scp-operator-kpi.is-danger{background:#fef2f2;border-color:#fecaca}.scp-operator-kpi.is-danger strong{color:#b91c1c}.scp-operator-kpi.is-done{background:#eff6ff;border-color:#bfdbfe}.scp-operator-kpi.is-done strong{color:#1d4ed8}.scp-operator-dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.scp-operator-box{border:1px solid rgba(15,23,42,.10);border-radius:16px;background:rgba(255,255,255,.88);padding:14px;min-width:0}.scp-operator-box-wide{grid-column:1/-1}.scp-operator-box h3{margin:0 0 8px;font-size:16px}.scp-operator-list{display:grid;gap:6px;max-height:320px;overflow:auto}.scp-operator-list-compact{max-height:240px}.scp-operator-row{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:8px;align-items:center;text-decoration:none;color:#0f172a;border:1px solid rgba(15,23,42,.08);background:#fff;border-radius:12px;padding:8px 10px;font-size:13px}.scp-operator-row:hover{background:#f8fafc}.scp-operator-row strong{font-size:12px}.scp-operator-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scp-operator-row em{font-style:normal;color:#64748b;white-space:nowrap;font-size:12px}@media(max-width:820px){.scp-operator-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.scp-operator-kpi{padding:9px 6px;border-radius:14px}.scp-operator-kpi span{font-size:10px}.scp-operator-kpi strong{font-size:20px}.scp-operator-dashboard-grid{grid-template-columns:1fr}.scp-operator-row{grid-template-columns:1fr;gap:2px}.scp-operator-row span{white-space:normal}.scp-operator-row em{white-space:normal}.scp-operator-list{max-height:260px}}

/* v1.8.7 - pulsanti grigi riuniti in Altre funzioni */
.scp-toolbar-more {
  position:relative;
  display:inline-flex;
  flex:0 0 auto;
}
.scp-toolbar-more summary {
  list-style:none;
}
.scp-toolbar-more summary::-webkit-details-marker {
  display:none;
}
.scp-toolbar-more summary::after {
  content:'▾';
  font-size:11px;
  margin-left:2px;
}
.scp-toolbar-more[open] summary::after {
  content:'▴';
}
.scp-toolbar-more-panel {
  position:absolute;
  z-index:30;
  top:calc(100% + 8px);
  right:0;
  width:min(560px, 92vw);
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
  padding:12px;
  border:1px solid var(--scp-border);
  border-radius:18px;
  background:#ffffff;
  box-shadow:0 18px 42px rgba(17,42,70,.16);
}
.scp-toolbar-more-panel .scp-btn,
.scp-toolbar-more-panel .scp-mobile-logout-form .scp-btn {
  width:100%;
}
.scp-toolbar-more-panel .scp-search-form,
.scp-toolbar-more-panel .scp-mobile-logout-form {
  grid-column:1 / -1;
}
.scp-toolbar-more-panel .scp-mobile-logout-form {
  display:block;
}
@media (max-width:820px) {
  .scp-toolbar-more {
    grid-column:1 / -1;
    width:100%;
    display:block;
  }
  .scp-toolbar-more > summary.scp-btn {
    width:100% !important;
  }
  .scp-toolbar-more-panel {
    position:static;
    width:100%;
    margin-top:8px;
    box-shadow:none;
    border-radius:14px;
    padding:8px;
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .scp-toolbar-more-panel .scp-search-form {
    grid-template-columns:minmax(0, 1fr) auto !important;
  }
}
@media (max-width:520px) {
  .scp-toolbar-more-panel {
    grid-template-columns:1fr;
  }
}


/* v1.8.8 - ricerca più ampia in Altre funzioni e rimozione Esci */
.scp-toolbar-more-panel .scp-search-form {
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) 86px !important;
  align-items:center;
  gap:8px !important;
}
.scp-toolbar-more-panel .scp-search-form .scp-search {
  min-width:0;
  width:100%;
}
.scp-toolbar-more-panel .scp-search-form .scp-btn {
  width:auto !important;
  min-width:72px;
  padding-left:10px;
  padding-right:10px;
}
@media (max-width:520px) {
  .scp-toolbar-more-panel .scp-search-form {
    grid-template-columns:minmax(0, 1fr) 68px !important;
  }
  .scp-toolbar-more-panel .scp-search-form .scp-btn {
    min-width:60px;
    padding-left:8px;
    padding-right:8px;
  }
}

.scp-notification-status{display:inline-flex;align-items:center;min-height:32px;padding:0 8px;font-size:11px;color:#64748b;line-height:1.25}.scp-notification-status.is-ok{color:#166534}.scp-notification-status.is-warn{color:#92400e}.scp-notification-status.is-error{color:#991b1b}.scp-btn.is-blocked{border-color:#fecaca;background:#fef2f2;color:#991b1b}.scp-btn.is-active{border-color:#bbf7d0;background:#f0fdf4;color:#166534}@media(max-width:820px){.scp-notification-status{display:block;width:100%;padding:2px 4px;font-size:11px}}

/* Versione 1.9.2 - notifiche fuori da Altre funzioni, attivazione push nel pannello */
.scp-toolbar-more-summary {
  position:relative;
  display:inline-flex !important;
  align-items:center;
  gap:8px;
}
.scp-notifications-link .scp-notifications-badge {
  position:static;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:18px;
  height:18px;
  padding:0 5px;
  margin-left:4px;
  border-radius:999px;
  background:#dc2626;
  color:#fff;
  font-size:11px;
  font-weight:800;
  line-height:1;
  box-shadow:none;
}
.scp-notifications-link .scp-notifications-badge[hidden] {
  display:none !important;
}
.scp-notifications-link {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:6px;
}
.scp-toolbar-more-panel .scp-push-toggle {
  white-space:nowrap;
}

.scp-notifications-main-link {
  position:relative;
  flex:0 0 auto;
}
.scp-visually-hidden {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
@media (max-width:820px) {
  .scp-toolbar-more-summary {
    justify-content:center;
    width:100%;
  }
  .scp-toolbar-more-panel .scp-push-toggle,
  .scp-notifications-link {
    width:100%;
  }
}

/* v1.9.3 - scadenza principale bloccata finché restano sotto-attività aperte */
.scp-check-btn.is-disabled {
  cursor:not-allowed;
  opacity:.38;
  border-color:#94a3b8;
  background:#f1f5f9;
}
.scp-check-btn.is-disabled.checked {
  opacity:.65;
}
.scp-status-select option:disabled {
  color:#94a3b8;
}

/* v2.0.0 - Messaggi interni, report utenti e vista calendario */
.scp-message-form textarea { min-height: 76px; }
.scp-message-recipients { margin-top: 6px; }
.scp-panel-subtitle-row { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin:18px 0 10px; }
.scp-panel-subtitle-row h3 { margin:0; }
.scp-message-list { display:grid; gap:10px; max-height:420px; overflow:auto; padding-right:4px; }
.scp-message-row { border:1px solid rgba(31,95,139,.16); border-radius:14px; padding:10px 12px; background:#fff; }
.scp-message-row.is-unread { border-color:rgba(31,95,139,.45); background:#eef8ff; box-shadow:0 4px 14px rgba(31,95,139,.08); }
.scp-message-meta { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:5px; font-size:.88rem; }
.scp-message-meta strong { color:#17344d; }
.scp-message-meta span { color:#667085; }
.scp-message-meta em { color:#1f5f8b; font-style:normal; font-weight:700; }
.scp-message-text { font-weight:600; color:#1f2937; line-height:1.35; }
.scp-user-report-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:12px; }
.scp-user-report-card { border:1px solid rgba(31,95,139,.16); border-radius:16px; background:#fff; padding:14px; }
.scp-user-report-card h3 { margin:0 0 10px; font-size:1.05rem; }
.scp-user-report-kpis { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:6px; }
.scp-user-report-kpis span { border-radius:10px; background:#f4f7fb; padding:7px 6px; font-size:.78rem; text-align:center; }
.scp-user-report-kpis strong { display:block; font-size:1.05rem; }
.scp-user-report-lines { display:grid; gap:5px; margin-top:10px; }
.scp-user-report-lines a { display:block; text-decoration:none; border-radius:8px; background:#f8fafc; padding:6px 8px; font-size:.86rem; color:#1f2937; }
.scp-calendar-nav { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; margin-bottom:12px; }
.scp-calendar-nav strong { font-size:1.1rem; text-transform:capitalize; }
.scp-calendar-month-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:6px; }
.scp-calendar-weekday { text-align:center; font-weight:800; font-size:.82rem; color:#475467; padding:6px; }
.scp-calendar-day { min-height:112px; border:1px solid rgba(31,95,139,.16); border-radius:12px; background:#fff; padding:7px; overflow:hidden; }
.scp-calendar-day.is-empty { background:transparent; border:0; }
.scp-calendar-day.is-today { outline:2px solid rgba(31,95,139,.35); }
.scp-calendar-day-number { font-weight:800; color:#17344d; margin-bottom:5px; }
.scp-calendar-day-items { display:grid; gap:4px; }
.scp-calendar-task { display:block; text-decoration:none; border-radius:7px; padding:4px 6px; font-size:.75rem; line-height:1.15; color:#111827; background:#eaf5ff; }
.scp-calendar-task.is-overdue { background:#fee2e2; }
.scp-calendar-task.is-done { background:#dbeafe; text-decoration:line-through; opacity:.8; }
.scp-calendar-more { font-size:.72rem; color:#667085; font-style:normal; font-weight:700; }
@media (max-width: 820px) {
  .scp-user-report-kpis { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .scp-calendar-month-grid { gap:3px; }
  .scp-calendar-weekday { font-size:.68rem; padding:4px 1px; }
  .scp-calendar-day { min-height:72px; border-radius:8px; padding:4px; }
  .scp-calendar-day-number { font-size:.78rem; margin-bottom:2px; }
  .scp-calendar-task { font-size:.62rem; padding:3px 4px; }
  .scp-message-meta { font-size:.78rem; }
}

/* v2.0.1 - Messaggi interni compatti */
.scp-message-form-compact{
  display:grid;
  gap:8px;
  padding:10px;
  border:1px solid rgba(31,95,139,.14);
  border-radius:14px;
  background:#f8fbfd;
  margin-bottom:10px;
}
.scp-message-compact-row{
  display:grid;
  grid-template-columns:70px minmax(0,1fr);
  gap:8px;
  align-items:center;
}
.scp-message-compact-label{
  font-size:.82rem;
  font-weight:800;
  color:#41566b;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.scp-message-compact-row select,
.scp-message-compact-row textarea{
  width:100%;
  min-width:0;
}
.scp-message-form-compact textarea{
  min-height:52px;
  resize:vertical;
}
.scp-message-compact-text{
  grid-template-columns:70px minmax(0,1fr) auto;
  align-items:start;
}
.scp-message-recipients{
  margin-top:0;
  gap:5px;
}
.scp-message-recipients .scp-user-pill{
  padding:4px 7px;
  font-size:.82rem;
}
.scp-message-history-box{
  margin-top:10px;
}
.scp-message-history-summary{
  display:inline-flex;
  cursor:pointer;
  list-style:none;
}
.scp-message-history-summary::-webkit-details-marker{ display:none; }
.scp-message-history-inner{
  margin-top:10px;
  border:1px solid rgba(31,95,139,.12);
  border-radius:14px;
  padding:10px;
  background:#fff;
}
.scp-message-history-actions{
  margin-bottom:8px;
}
.scp-message-delete-form{
  margin-left:auto;
}
.scp-message-meta .scp-message-delete-form button{
  padding:4px 8px;
  min-height:auto;
  font-size:.76rem;
}
.scp-message-list{
  max-height:360px;
}
@media (max-width: 700px){
  .scp-message-compact-row,
  .scp-message-compact-text{
    grid-template-columns:1fr;
    gap:4px;
  }
  .scp-message-compact-text .scp-btn{
    width:100%;
  }
  .scp-message-delete-form{
    margin-left:0;
  }
}

/* v2.0.2 - Messaggi interni con form standard e permessi invio/ricezione */
.scp-message-form-standard{
  margin-bottom:12px;
  padding:12px;
  border:1px solid rgba(31,95,139,.14);
  border-radius:16px;
  background:#f8fbfd;
}
.scp-message-form-standard textarea{
  min-height:58px;
  resize:vertical;
}
.scp-message-form-standard .scp-message-recipients{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:6px;
}
.scp-message-form-standard .scp-user-pill{
  padding:5px 8px;
}
.scp-message-form-actions{
  margin-top:0;
  justify-content:flex-end;
}
@media (max-width: 820px){
  .scp-message-form-standard{
    padding:10px;
    gap:8px;
  }
  .scp-message-form-actions{
    justify-content:stretch;
  }
  .scp-message-form-actions .scp-btn{
    width:100%;
  }
}

/* v2.0.3 - Destinatari messaggi in riquadri uniformi */
.scp-message-form-standard .scp-message-recipients{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(145px, 1fr));
  gap:8px;
  margin-top:8px;
  width:100%;
}
.scp-message-form-standard .scp-message-recipients .scp-user-pill{
  width:100%;
  min-height:44px;
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  padding:8px 10px;
  border:1px solid rgba(31,95,139,.18);
  border-radius:12px;
  background:#fff;
  box-shadow:0 1px 3px rgba(15,23,42,.04);
}
.scp-message-form-standard .scp-message-recipients .scp-user-pill input{
  flex:0 0 auto;
  width:16px;
  height:16px;
  margin:0;
}
.scp-message-form-standard .scp-message-recipients .scp-user-pill span{
  display:block;
  min-width:0;
  line-height:1.15;
  font-weight:700;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.scp-message-form-standard .scp-message-recipients .scp-user-pill:has(input:checked){
  border-color:rgba(31,95,139,.45);
  background:#eef7fb;
}
@media (max-width: 520px){
  .scp-message-form-standard .scp-message-recipients{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:6px;
  }
  .scp-message-form-standard .scp-message-recipients .scp-user-pill{
    min-height:40px;
    padding:7px 8px;
  }
}


/* v2.0.4 - Destinatari messaggi: esclusi admin lato PHP e pillole ovali compatte */
.scp-message-form-standard .scp-message-recipients{
  display:flex !important;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  margin-top:6px;
  width:100%;
}
.scp-message-form-standard .scp-message-recipients .scp-user-pill{
  width:auto !important;
  min-width:0 !important;
  max-width:170px;
  min-height:30px !important;
  box-sizing:border-box;
  display:inline-flex !important;
  align-items:center;
  justify-content:flex-start;
  gap:5px;
  padding:4px 9px 4px 6px !important;
  border:1px solid rgba(31,95,139,.20);
  border-radius:999px !important;
  background:#fff;
  box-shadow:none;
  font-size:12px;
  line-height:1.1;
  cursor:pointer;
}
.scp-message-form-standard .scp-message-recipients .scp-user-pill input{
  flex:0 0 auto;
  width:14px !important;
  height:14px !important;
  min-height:14px !important;
  margin:0 !important;
}
.scp-message-form-standard .scp-message-recipients .scp-user-pill span{
  display:block;
  min-width:0;
  font-weight:700;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.scp-message-form-standard .scp-message-recipients .scp-user-pill:hover{
  background:#f2f7ff;
  border-color:#9fb8d6;
}
.scp-message-form-standard .scp-message-recipients .scp-user-pill:has(input:checked){
  border-color:rgba(31,95,139,.48);
  background:#eaf5ff;
  color:#17344d;
}
@media (max-width:520px){
  .scp-message-form-standard .scp-message-recipients{
    display:flex !important;
    gap:5px;
  }
  .scp-message-form-standard .scp-message-recipients .scp-user-pill{
    max-width:145px;
    min-height:28px !important;
    padding:4px 8px 4px 6px !important;
    font-size:11.5px;
  }
}

/* v2.0.5 - cancellazione allegati da scheda attività per amministratore */
.scp-attachment-card-item{
  display:inline-flex;
  align-items:center;
  gap:4px;
  margin:2px 4px 2px 0;
  vertical-align:middle;
}
.scp-attachment-delete-form{
  display:inline-flex !important;
  margin:0 !important;
  padding:0 !important;
  width:auto !important;
}
.scp-attachment-delete-btn{
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  max-width:22px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:999px !important;
  background:#b91c1c !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:700 !important;
  line-height:22px !important;
  text-align:center !important;
  cursor:pointer !important;
  box-shadow:none !important;
}
.scp-attachment-delete-btn:hover{background:#7f1d1d !important;}
@media print{
  .scp-attachment-delete-form{display:none !important;}
}


/* v2.0.7 - contatore Messaggi stabile in linea e destinatari admin non tecnici */
.scp-notifications-link .scp-messages-badge,
.scp-messages-main-link .scp-messages-badge {
  position:static !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:18px;
  height:18px;
  padding:0 5px;
  margin-left:4px;
  border-radius:999px;
  background:#dc2626;
  color:#fff;
  font-size:11px;
  font-weight:800;
  line-height:1;
  box-shadow:none;
  border:0;
  transform:none !important;
  inset:auto !important;
}
.scp-notifications-link .scp-messages-badge[hidden],
.scp-messages-main-link .scp-messages-badge[hidden] {
  display:none !important;
}
.scp-messages-main-link {
  position:relative;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:6px;
}

/* v2.0.8 - contatore totale su ingranaggio mobile e messaggi non letti subito visibili */
.scp-stat-settings .scp-total-badge {
  background:#dc2626;
  color:#fff;
}
.scp-unread-messages-box {
  margin:12px 0;
  padding:12px;
  border:1px solid rgba(220,38,38,.20);
  border-radius:16px;
  background:#fff7f7;
}
.scp-unread-messages-box .scp-panel-subtitle-row h3 {
  margin:0;
}
.scp-message-list-unread {
  max-height:320px;
  overflow:auto;
}
@media (max-width:820px) {
  .scp-unread-messages-box {
    padding:10px;
    border-radius:14px;
  }
  .scp-message-list-unread {
    max-height:260px;
  }
}

/* v2.0.9 - Risposta rapida ai messaggi */
.scp-message-reply-box{
  margin-top:8px;
}
.scp-message-reply-box > summary{
  display:inline-flex;
  list-style:none;
  cursor:pointer;
}
.scp-message-reply-box > summary::-webkit-details-marker{display:none;}
.scp-message-reply-form{
  margin-top:8px;
  padding:10px;
  border:1px solid rgba(31,95,139,.16);
  border-radius:14px;
  background:rgba(248,250,252,.92);
  display:grid;
  grid-template-columns:1fr 1fr auto;
  gap:8px;
  align-items:end;
}
.scp-message-reply-form textarea{
  grid-column:1 / span 2;
  min-height:56px;
  resize:vertical;
}
.scp-message-reply-to,
.scp-message-reply-task{
  display:flex;
  flex-direction:column;
  gap:4px;
  font-size:.82rem;
  color:#475467;
}
.scp-message-reply-task select{
  min-height:36px;
}
@media (max-width:700px){
  .scp-message-reply-form{
    grid-template-columns:1fr;
  }
  .scp-message-reply-form textarea{
    grid-column:auto;
  }
  .scp-message-reply-form .scp-btn{
    width:100%;
  }
}

/* v2.1.0 - azioni rapide sulle notifiche */
.scp-notification-actions{margin-top:6px;display:flex;gap:6px;align-items:center;}
.scp-btn-small{padding:5px 9px;font-size:12px;line-height:1.2;}

/* v2.1.2 - visibilità ridotta scadenze */
.scp-task-list-title-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.scp-btn-reduced-visibility.is-active{background:#0f766e;color:#fff;border-color:#0f766e}.scp-reduced-groups{display:grid;gap:14px}.scp-task-list.is-reduced-visibility{display:block}.scp-reduced-group{border:1px solid rgba(15,23,42,.12);border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 8px 22px rgba(15,23,42,.04)}.scp-reduced-group-header{width:100%;border:0;background:#f8fafc;padding:11px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;text-align:left;font-weight:800;color:#0f172a}.scp-reduced-group-header span{font-size:14px}.scp-reduced-group-header strong{min-width:28px;height:28px;border-radius:999px;background:#e2e8f0;color:#0f172a;display:inline-flex;align-items:center;justify-content:center;font-size:13px}.scp-reduced-group-scadute .scp-reduced-group-header{background:#fef2f2}.scp-reduced-group-scadute .scp-reduced-group-header strong{background:#fee2e2;color:#991b1b}.scp-reduced-group-entro7 .scp-reduced-group-header{background:#fff7ed}.scp-reduced-group-entro7 .scp-reduced-group-header strong{background:#ffedd5;color:#9a3412}.scp-reduced-group-entroMese .scp-reduced-group-header{background:#eff6ff}.scp-reduced-group-entroMese .scp-reduced-group-header strong{background:#dbeafe;color:#1d4ed8}.scp-reduced-group-oltreMese .scp-reduced-group-header{background:#f0fdf4}.scp-reduced-group-oltreMese .scp-reduced-group-header strong{background:#dcfce7;color:#166534}.scp-reduced-group-body{display:grid;gap:10px;padding:10px}.scp-reduced-group.is-collapsed .scp-reduced-group-body{display:none}.scp-reduced-group.is-empty .scp-reduced-group-body{padding:8px 12px}.scp-reduced-empty{font-size:13px;color:#64748b;font-style:italic;padding:6px 2px}.scp-task-list.is-reduced-visibility .scp-task-card{margin:0}@media(max-width:760px){.scp-task-list-title{align-items:flex-start}.scp-task-list-title-actions{width:100%;justify-content:stretch}.scp-task-list-title-actions .scp-btn{flex:1 1 auto;text-align:center}.scp-reduced-group-header{padding:10px 12px}.scp-reduced-group-body{padding:8px;gap:8px}}



/* v2.1.3 - pulsante visibilità ridotta sempre visibile */
.scp-visibility-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px 0;padding:10px 12px;border:1px solid rgba(15,23,42,.10);border-radius:14px;background:#f8fafc}.scp-visibility-toggle-row span{font-size:13px;color:#475467}.scp-btn-reduced-visibility-main{font-weight:800}.scp-btn-reduced-visibility-toolbar{font-weight:800}.scp-btn-reduced-visibility::before{content:"▦";margin-right:6px}.scp-btn-reduced-visibility.is-active::before{content:"▤"}@media(max-width:760px){.scp-visibility-toggle-row{align-items:stretch;flex-direction:column}.scp-visibility-toggle-row .scp-btn{width:100%;text-align:center}.scp-visibility-toggle-row span{text-align:center}.scp-task-list-title-actions .scp-btn-reduced-visibility{display:none}}


/* v2.1.4 - barra pulsanti compatta e visibilità ridotta chiusa a riquadri */
.scp-toolbar{
  flex-wrap:nowrap !important;
  overflow-x:auto;
  overflow-y:visible;
  gap:7px !important;
  padding-bottom:3px;
  scrollbar-width:thin;
}
.scp-toolbar > .scp-btn,
.scp-toolbar > .scp-notifications-link,
.scp-toolbar-more > summary.scp-btn{
  flex:0 0 auto !important;
  white-space:nowrap;
  min-height:34px;
  padding:7px 10px;
  font-size:12.5px;
  line-height:1.15;
}
.scp-toolbar-more{flex:0 0 auto !important;}
.scp-toolbar .scp-app-badge{transform:scale(.88);transform-origin:center;}
.scp-task-list-title-actions{flex-wrap:nowrap !important;}
.scp-task-list-title-actions .scp-btn{white-space:nowrap;}
.scp-visibility-toggle-row{display:none !important;}
.scp-reduced-groups{gap:9px;}
.scp-reduced-group{border-radius:13px;box-shadow:0 5px 14px rgba(15,23,42,.035);}
.scp-reduced-group-header{
  min-height:42px;
  padding:8px 11px !important;
  gap:8px;
  line-height:1.15;
}
.scp-reduced-group-header span{
  flex:1 1 auto;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px !important;
}
.scp-reduced-group-header em{
  flex:0 0 auto;
  font-style:normal;
  font-size:11px;
  font-weight:800;
  color:#475569;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.scp-reduced-group-header strong{
  flex:0 0 auto;
  min-width:24px !important;
  height:24px !important;
  font-size:12px !important;
}
.scp-reduced-group-body{padding:7px !important;gap:6px !important;}
.scp-task-list.is-reduced-visibility .scp-task-card{
  display:block !important;
  margin:0 !important;
  padding:7px 9px !important;
  border-radius:11px !important;
  min-height:38px;
  box-shadow:none !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-task-check,
.scp-task-list.is-reduced-visibility .scp-task-card .scp-task-desc,
.scp-task-list.is-reduced-visibility .scp-task-card .scp-future-toggle,
.scp-task-list.is-reduced-visibility .scp-task-card .scp-future-full-detail{
  display:none !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-task-main{min-width:0;}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-card-top{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:8px !important;
  margin:0 !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-card-top h3{
  margin:0 !important;
  font-size:13px !important;
  line-height:1.25 !important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-task-date{
  flex:0 0 auto;
  justify-items:end !important;
  font-size:11.5px !important;
  white-space:nowrap;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-inline-due-form{margin:0;}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-inline-due-button{
  min-height:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
@media(max-width:820px){
  .scp-toolbar[data-scp-mobile-tools].is-open{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto;
    align-items:center;
  }
  .scp-toolbar[data-scp-mobile-tools] .scp-btn,
  .scp-toolbar[data-scp-mobile-tools] .scp-notifications-link,
  .scp-toolbar-more > summary.scp-btn{
    width:auto !important;
    min-width:max-content;
    padding:7px 9px !important;
    font-size:12px !important;
  }
  .scp-mobile-tools-title{display:none !important;}
  .scp-toolbar-more{width:auto !important;grid-column:auto !important;display:inline-flex !important;}
  .scp-toolbar-more > summary.scp-btn{width:auto !important;}
  .scp-toolbar-more-panel{
    position:fixed !important;
    left:12px;
    right:12px;
    top:auto;
    bottom:12px;
    width:auto !important;
    max-height:72vh;
    overflow:auto;
  }
}
@media(max-width:520px){
  .scp-toolbar > .scp-btn,
  .scp-toolbar > .scp-notifications-link,
  .scp-toolbar-more > summary.scp-btn{font-size:11.5px;padding:7px 8px;}
  .scp-reduced-group-header span{font-size:12.5px !important;}
  .scp-task-list.is-reduced-visibility .scp-task-card .scp-card-top h3{font-size:12.5px !important;}
}


/* v2.1.5 - Altre funzioni come tendina e gruppi ridotti con schede operative complete */
.scp-toolbar{
  position:relative !important;
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  gap:6px !important;
  overflow:visible !important;
}
.scp-toolbar > .scp-btn,
.scp-toolbar > .scp-notifications-link,
.scp-toolbar-more > summary.scp-btn{
  flex:0 0 auto !important;
  width:auto !important;
  min-width:auto !important;
  max-width:none !important;
  white-space:nowrap !important;
  padding:7px 9px !important;
  font-size:12px !important;
}
.scp-toolbar-more{
  position:relative !important;
  display:inline-flex !important;
  flex:0 0 auto !important;
  width:auto !important;
  grid-column:auto !important;
  overflow:visible !important;
  z-index:60;
}
.scp-toolbar-more[open]{z-index:1000;}
.scp-toolbar-more-panel{
  display:none !important;
  position:absolute !important;
  z-index:1001 !important;
  top:calc(100% + 8px) !important;
  right:0 !important;
  left:auto !important;
  bottom:auto !important;
  width:min(560px, calc(100vw - 28px)) !important;
  max-height:72vh !important;
  overflow:auto !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:8px !important;
  padding:12px !important;
  border:1px solid var(--scp-border) !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 18px 42px rgba(17,42,70,.20) !important;
}
.scp-toolbar-more[open] .scp-toolbar-more-panel{display:grid !important;}
.scp-toolbar-more-panel .scp-btn{width:100% !important;min-width:0 !important;}
.scp-toolbar-more-panel .scp-search-form{grid-column:1 / -1 !important;}
.scp-task-list.is-reduced-visibility .scp-reduced-group-body{
  padding:9px !important;
  gap:9px !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card,
.scp-task-list.is-reduced-visibility .scp-task-card.scp-future-compact:not(.is-expanded){
  display:grid !important;
  grid-template-columns:auto minmax(0, 1fr) !important;
  gap:12px !important;
  padding:12px !important;
  border-radius:16px !important;
  min-height:0 !important;
  box-shadow:none !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-task-check,
.scp-task-list.is-reduced-visibility .scp-task-card.scp-future-compact:not(.is-expanded) .scp-task-check{
  display:flex !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-task-desc,
.scp-task-list.is-reduced-visibility .scp-task-card .scp-task-desc-short{
  display:block !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-future-full-detail,
.scp-task-list.is-reduced-visibility .scp-task-card.scp-future-compact:not(.is-expanded) .scp-future-full-detail{
  display:block !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-future-toggle{
  display:none !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-card-top{
  display:flex !important;
  flex-direction:row !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:12px !important;
  margin:0 !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-card-top h3{
  margin:0 !important;
  font-size:16px !important;
  line-height:1.2 !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-task-date{
  display:grid !important;
  flex:0 0 auto !important;
  justify-items:end !important;
  font-size:12px !important;
  white-space:nowrap !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-inline-due-form{margin:0 !important;}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-inline-due-button{
  min-height:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.scp-task-list.is-reduced-visibility .scp-task-card .scp-badges,
.scp-task-list.is-reduced-visibility .scp-task-card .scp-task-actions{
  display:flex !important;
  flex-wrap:wrap !important;
}
@media(max-width:820px){
  .scp-toolbar[data-scp-mobile-tools].is-open{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow:visible !important;
    align-items:center !important;
  }
  .scp-toolbar[data-scp-mobile-tools] .scp-btn,
  .scp-toolbar[data-scp-mobile-tools] .scp-notifications-link,
  .scp-toolbar-more > summary.scp-btn{
    width:auto !important;
    min-width:auto !important;
    padding:7px 8px !important;
    font-size:11.5px !important;
  }
  .scp-toolbar-more-panel{
    position:absolute !important;
    right:0 !important;
    left:auto !important;
    top:calc(100% + 8px) !important;
    bottom:auto !important;
    width:min(360px, calc(100vw - 24px)) !important;
    grid-template-columns:1fr !important;
  }
  .scp-toolbar-more-panel .scp-search-form{
    grid-template-columns:minmax(0, 1fr) 68px !important;
  }
  .scp-task-list.is-reduced-visibility .scp-task-card,
  .scp-task-list.is-reduced-visibility .scp-task-card.scp-future-compact:not(.is-expanded){
    grid-template-columns:auto minmax(0,1fr) !important;
    padding:10px !important;
    gap:9px !important;
  }
  .scp-task-list.is-reduced-visibility .scp-task-card .scp-card-top{
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:5px !important;
  }
  .scp-task-list.is-reduced-visibility .scp-task-card .scp-task-date{justify-items:start !important;}
}
@media(max-width:520px){
  .scp-toolbar{gap:5px !important;}
  .scp-toolbar > .scp-btn,
  .scp-toolbar > .scp-notifications-link,
  .scp-toolbar-more > summary.scp-btn{
    padding:6px 7px !important;
    font-size:11px !important;
  }
}


/* v2.1.6 - menu mobile su due righe e pulsanti leggibili */
@media (max-width:820px){
  .scp-toolbar[data-scp-mobile-tools].is-open{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:6px !important;
    align-items:stretch !important;
    overflow:visible !important;
    padding:8px !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open > .scp-btn,
  .scp-toolbar[data-scp-mobile-tools].is-open > .scp-notifications-link,
  .scp-toolbar[data-scp-mobile-tools].is-open > .scp-toolbar-more,
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-toolbar-more > summary.scp-btn{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    flex:none !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open > .scp-btn,
  .scp-toolbar[data-scp-mobile-tools].is-open > .scp-notifications-link,
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-toolbar-more > summary.scp-btn{
    min-height:37px !important;
    padding:6px 5px !important;
    font-size:10.7px !important;
    line-height:1.08 !important;
    white-space:normal !important;
    text-align:center !important;
    justify-content:center !important;
    align-items:center !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open > .scp-toolbar-more{
    position:relative !important;
    display:block !important;
    grid-column:auto !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-notifications-link{
    display:flex !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-notifications-link span{
    min-width:0 !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-app-badge{
    transform:scale(.78) !important;
    margin-left:2px !important;
  }
  .scp-toolbar-more[open] .scp-toolbar-more-panel{
    display:grid !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-toolbar-more-panel{
    position:fixed !important;
    left:10px !important;
    right:10px !important;
    top:auto !important;
    bottom:10px !important;
    width:auto !important;
    max-height:70vh !important;
    overflow:auto !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:7px !important;
    padding:10px !important;
    border-radius:16px !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-toolbar-more-panel .scp-btn{
    min-height:38px !important;
    padding:7px 6px !important;
    font-size:11px !important;
    line-height:1.12 !important;
    white-space:normal !important;
    text-align:center !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-toolbar-more-panel .scp-search-form{
    grid-column:1 / -1 !important;
    grid-template-columns:minmax(0, 1fr) 64px !important;
  }
}
@media (max-width:390px){
  .scp-toolbar[data-scp-mobile-tools].is-open{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open > .scp-btn,
  .scp-toolbar[data-scp-mobile-tools].is-open > .scp-notifications-link,
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-toolbar-more > summary.scp-btn{
    font-size:10.2px !important;
    padding-left:4px !important;
    padding-right:4px !important;
  }
}


/* v2.1.7 - posizione Visibilità e tendina Altre funzioni in mobile */
@media (max-width:820px){
  .scp-toolbar[data-scp-mobile-tools].is-open > .scp-toolbar-more[open]{
    grid-column:1 / -1 !important;
    width:100% !important;
    display:block !important;
    position:relative !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open > .scp-toolbar-more[open] > summary.scp-btn{
    width:100% !important;
    min-height:37px !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-toolbar-more[open] .scp-toolbar-more-panel{
    position:static !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    transform:none !important;
    width:100% !important;
    max-height:58vh !important;
    margin-top:8px !important;
    overflow:auto !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:7px !important;
    padding:10px !important;
    border-radius:16px !important;
    box-shadow:0 10px 26px rgba(17,42,70,.12) !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-toolbar-more[open] .scp-toolbar-more-panel .scp-btn{
    min-height:38px !important;
    padding:7px 6px !important;
    font-size:11px !important;
    line-height:1.12 !important;
    white-space:normal !important;
    text-align:center !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-toolbar-more[open] .scp-toolbar-more-panel .scp-search-form{
    grid-column:1 / -1 !important;
    grid-template-columns:minmax(0, 1fr) 64px !important;
  }
}
@media (max-width:390px){
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-toolbar-more[open] .scp-toolbar-more-panel{
    grid-template-columns:1fr !important;
  }
}

/* v2.1.8 - allegati multipli rapidi per sotto-attività */
.scp-file-inline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:34px;
  padding:6px 10px;
  border:1px dashed rgba(31,95,139,.35);
  border-radius:10px;
  background:#ffffff;
  color:var(--scp-blue-dark);
  font-size:12px;
  font-weight:700;
  cursor:pointer;
  white-space:nowrap;
}
.scp-file-inline input[type="file"]{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  border:0;
}
.scp-file-inline em,
.scp-file-count-inline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:18px;
  min-height:18px;
  padding:1px 5px;
  border-radius:999px;
  background:#eef7ff;
  color:#164666;
  font-style:normal;
  font-size:11px;
  font-weight:700;
}
.scp-file-inline em:empty,
.scp-file-count-inline:empty{
  display:none;
}
.scp-subtask-upload-form{
  grid-column:1 / -1;
  display:flex;
  align-items:center;
  gap:6px;
  margin:4px 0 0 36px;
  padding:5px;
  border-radius:12px;
  background:rgba(248,251,255,.8);
}
.scp-subtask-upload-form .scp-btn{
  min-height:34px;
}
.scp-subtask-attachments input[type="file"] + .scp-file-count-inline{
  margin-top:6px;
}
.scp-quick-subtask-form .scp-file-inline{
  min-width:112px;
}
@media (max-width: 640px){
  .scp-quick-subtask-form{
    grid-template-columns:24px minmax(0,1fr) auto;
  }
  .scp-quick-subtask-form .scp-file-inline{
    grid-column:2 / 3;
    width:100%;
  }
  .scp-subtask-upload-form{
    margin-left:0;
    flex-wrap:wrap;
  }
  .scp-subtask-upload-form .scp-file-inline{
    flex:1 1 150px;
  }
}
@media print{
  .scp-subtask-upload-form,
  .scp-file-inline{display:none !important;}
}
.scp-quick-subtask-form{
  grid-template-columns:24px minmax(120px,1.1fr) minmax(120px,1.2fr) auto auto;
}
@media (max-width: 640px){
  .scp-quick-subtask-form{
    grid-template-columns:24px minmax(0,1fr) auto;
  }
}

/* v2.1.11 - doppio flag sotto-attività: completato a sinistra + parziale celeste */
.scp-subtask-edit-flags {
  display:flex;
  gap:4px;
  align-items:center;
  justify-content:flex-start;
}
.scp-subtasks-form:not(.scp-has-two-subtask-flags) [data-scp-partial-flag-wrapper] {
  display:none !important;
}
.scp-has-two-subtask-flags .scp-subtask-edit-row {
  grid-template-columns:82px minmax(0,1fr) auto;
}
.scp-subtask-edit-check {
  flex-direction:column;
  gap:1px;
}
.scp-subtask-edit-check span {
  font-size:8.5px;
  line-height:1;
  font-weight:800;
  color:var(--scp-muted);
}
.scp-subtask-edit-check input {
  margin:0 !important;
}
.scp-subtask-item.has-two-flags {
  grid-template-columns:100px minmax(0,1fr);
}
.scp-subtask-flags {
  display:flex;
  align-items:center;
  gap:4px;
  flex-wrap:nowrap;
}
.scp-subtask-flags .scp-subtask-toggle-form {
  margin:0;
}
.scp-subtask-flags .scp-subtask-toggle {
  width:46px;
  min-width:46px;
  height:24px;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:9px;
  font-weight:900;
  line-height:1;
  padding:0 3px;
  color:var(--scp-blue);
}
.scp-subtask-flags .scp-subtask-toggle.checked:after {
  content:none;
}
.scp-subtask-flags .scp-subtask-toggle.checked span {
  color:#fff;
}
.scp-subtask-flags .scp-subtask-toggle-partial {
  border-color:#38bdf8;
  color:#0369a1;
}
.scp-subtask-flags .scp-subtask-toggle-partial.checked {
  background:#0284c7;
  border-color:#0284c7;
}
.scp-subtask-flags .scp-subtask-toggle-final.checked {
  background:var(--scp-green);
  border-color:var(--scp-green);
}
.scp-subtask-item.is-partial-done:not(.is-done) {
  background:linear-gradient(90deg, rgba(224,242,254,.98), rgba(255,255,255,.98));
  border-color:rgba(2,132,199,.35);
}
@media (max-width: 640px) {
  .scp-has-two-subtask-flags .scp-subtask-edit-row {
    grid-template-columns:76px minmax(0,1fr) auto;
  }
  .scp-subtask-item.has-two-flags {
    grid-template-columns:1fr;
  }
  .scp-subtask-flags {
    justify-content:flex-start;
  }
}
@media print {
  .scp-subtask-item.has-two-flags {
    grid-template-columns:22mm minmax(0,1fr) !important;
  }
  .scp-subtask-flags .scp-subtask-toggle {
    width:9mm !important;
    min-width:9mm !important;
    height:4mm !important;
    font-size:6pt !important;
    border-radius:1mm !important;
  }
}
.scp-subtask-item.has-two-flags .scp-subtask-attachment-links {
  margin-left:106px;
}
@media (max-width: 640px) {
  .scp-subtask-item.has-two-flags .scp-subtask-attachment-links {
    margin-left:0;
  }
}

/* v2.1.12 - caselle doppio flag vuote con contorno colorato e blocco Compl. senza Parz. */
.scp-subtask-flags .scp-subtask-toggle {
  background:#fff !important;
  box-shadow:inset 0 0 0 1px currentColor;
}
.scp-subtask-flags .scp-subtask-toggle.checked {
  background:#fff !important;
}
.scp-subtask-flags .scp-subtask-toggle.checked:after {
  content:none !important;
}
.scp-subtask-flags .scp-subtask-toggle.checked span {
  color:inherit !important;
}
.scp-subtask-flags .scp-subtask-toggle-final {
  border-color:#16a34a !important;
  color:#166534 !important;
}
.scp-subtask-flags .scp-subtask-toggle-final.checked {
  border-color:#16a34a !important;
  color:#166534 !important;
  box-shadow:inset 0 0 0 1px #16a34a, 0 0 0 2px rgba(22,163,74,.18) !important;
}
.scp-subtask-flags .scp-subtask-toggle-partial {
  border-color:#0284c7 !important;
  color:#0369a1 !important;
}
.scp-subtask-flags .scp-subtask-toggle-partial.checked {
  background:#fff !important;
  border-color:#0284c7 !important;
  color:#0369a1 !important;
  box-shadow:inset 0 0 0 1px #0284c7, 0 0 0 2px rgba(2,132,199,.18) !important;
}
.scp-subtask-flags .scp-subtask-toggle.is-disabled,
.scp-subtask-flags .scp-subtask-toggle:disabled {
  border-color:#cbd5e1 !important;
  color:#94a3b8 !important;
  background:#f8fafc !important;
  box-shadow:none !important;
  cursor:not-allowed !important;
  opacity:.75;
}
.scp-subtask-edit-check.is-disabled {
  opacity:.55;
  cursor:not-allowed;
}
.scp-subtask-edit-check.is-disabled input {
  cursor:not-allowed;
}
.scp-subtask-edit-check input[data-scp-subtask-done-check],
.scp-subtask-edit-check input[data-scp-subtask-partial-check] {
  accent-color:transparent;
}

/* v2.1.13 - inserimento più compatto e pulsante mobile + sempre visibile */
.scp-quick-task-helper{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border:1px solid rgba(31,95,139,.16);
  border-radius:18px;
  background:linear-gradient(135deg, #f8fbff, #ffffff);
}
.scp-quick-task-helper strong{
  display:block;
  margin-bottom:3px;
  color:var(--scp-blue-dark);
}
.scp-quick-task-helper small{
  display:block;
  line-height:1.35;
}
.scp-quick-task-buttons{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:6px;
  flex:0 0 auto;
}
.scp-subtasks-summary{
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:42px;
  padding:2px 2px 8px;
  list-style:none;
  color:#27364c;
}
.scp-subtasks-summary::-webkit-details-marker{display:none;}
.scp-subtasks-summary strong{font-weight:900;}
.scp-subtasks-summary span{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:3px 8px;
  background:#eef3f9;
  color:var(--scp-muted);
  font-size:12px;
  font-weight:800;
}
.scp-subtasks-summary:after{
  content:'Apri';
  margin-left:auto;
  font-size:12px;
  font-weight:900;
  color:var(--scp-blue);
}
.scp-subtasks-form[open] .scp-subtasks-summary:after{content:'Chiudi';}
.scp-subtasks-form:not([open]){
  padding:10px 14px;
}
.scp-subtasks-form:not([open]) .scp-subtasks-summary{
  padding:0;
}
.scp-subtasks-tools-note{
  max-width:560px;
}
.scp-mobile-fab-add{
  display:none;
}
@media (max-width:820px){
  .scp-todo-app{
    padding-bottom:88px;
  }
  .scp-mobile-fab-add{
    position:fixed;
    right:18px;
    bottom:calc(18px + env(safe-area-inset-bottom));
    z-index:5000;
    display:flex;
    align-items:center;
    justify-content:center;
    width:60px;
    height:60px;
    border-radius:999px;
    background:var(--scp-blue);
    color:#fff !important;
    font-size:40px;
    line-height:1;
    font-weight:800;
    text-decoration:none !important;
    box-shadow:0 12px 30px rgba(17,42,70,.32);
    border:2px solid rgba(255,255,255,.85);
  }
  .scp-mobile-fab-add:active{
    transform:translateY(1px) scale(.98);
  }
  .scp-task-panel{
    scroll-margin-top:10px;
  }
  .scp-quick-task-helper{
    display:grid;
    grid-template-columns:1fr;
    padding:11px;
  }
  .scp-quick-task-buttons{
    justify-content:stretch;
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
  }
  .scp-quick-task-buttons .scp-btn{
    width:100%;
    min-width:0;
    padding-left:6px;
    padding-right:6px;
    font-size:11px;
  }
  .scp-subtasks-tools{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px;
  }
  .scp-subtasks-tools .scp-btn{
    width:100%;
    min-width:0;
    white-space:normal;
    font-size:11px;
    line-height:1.15;
  }
  .scp-subtasks-tools-note{
    grid-column:1 / -1;
    font-size:11px;
  }
}
@media (max-width:430px){
  .scp-quick-task-buttons{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .scp-mobile-fab-add{
    width:56px;
    height:56px;
    right:14px;
    bottom:calc(14px + env(safe-area-inset-bottom));
  }
}
@media print{
  .scp-mobile-fab-add,
  .scp-quick-task-helper{display:none !important;}
}

/* v2.1.14 - nuova scadenza più lineare e login multi-dispositivo */
.scp-task-form-new{
  gap:10px !important;
}
.scp-task-form-new > label,
.scp-task-form-new > details{
  margin-bottom:0;
}
.scp-task-form-new .scp-standard-select small{
  display:none;
}
.scp-task-form-new .scp-standard-select select{
  min-height:42px;
}
.scp-task-form-new .scp-quick-task-helper{
  padding:10px 12px;
  border-radius:16px;
}
.scp-task-form-new .scp-quick-task-helper small{
  color:#5c6b7d;
}
.scp-task-date-field,
.scp-task-priority-field{
  min-width:0;
}
.scp-compact-options,
.scp-compact-notes{
  border:1px solid rgba(15,23,42,.10);
  border-radius:14px;
  background:#f8fafc;
  padding:9px 12px;
}
.scp-compact-options summary,
.scp-compact-notes summary{
  cursor:pointer;
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  font-weight:900;
  color:#27364c;
}
.scp-compact-options summary::-webkit-details-marker,
.scp-compact-notes summary::-webkit-details-marker{display:none;}
.scp-compact-options summary:after,
.scp-compact-notes summary:after{
  content:'Apri';
  font-size:12px;
  color:var(--scp-blue);
  font-weight:900;
}
.scp-compact-options[open] summary:after,
.scp-compact-notes[open] summary:after{content:'Chiudi';}
.scp-compact-options summary span,
.scp-compact-notes summary span{
  margin-left:auto;
  border-radius:999px;
  padding:3px 8px;
  background:#eef3f9;
  color:var(--scp-muted);
  font-size:12px;
  font-weight:800;
}
.scp-compact-options-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding-top:10px;
}
.scp-compact-notes label{
  display:block;
  padding-top:10px;
}
.scp-quick-save-row{
  display:flex;
  align-items:center;
  gap:10px;
  padding:8px 10px;
  border:1px dashed rgba(31,95,139,.22);
  border-radius:14px;
  background:#fbfdff;
}
.scp-quick-save-row .scp-btn{
  flex:0 0 auto;
}
.scp-quick-save-row span{
  color:#5c6b7d;
  font-size:12px;
  line-height:1.35;
}
.scp-login-persistence-note{
  display:block;
  margin-top:4px;
  color:#667085;
  font-size:12px;
  line-height:1.35;
}
@media (max-width:820px){
  .scp-task-form-new{
    gap:8px !important;
  }
  .scp-task-form-new .scp-standard-select,
  .scp-task-form-new > label,
  .scp-compact-options,
  .scp-compact-notes,
  .scp-task-general-assignment,
  .scp-subtasks-form{
    border-radius:14px;
  }
  .scp-compact-options-grid{
    grid-template-columns:1fr;
    gap:8px;
  }
  .scp-quick-save-row{
    display:grid;
    grid-template-columns:1fr;
    gap:6px;
  }
  .scp-quick-save-row .scp-btn{
    width:100%;
  }
  .scp-task-form-new .scp-quick-task-helper strong{
    margin-bottom:0;
  }
  .scp-task-form-new .scp-quick-task-helper small{
    display:none;
  }
  .scp-mobile-fab-add{
    z-index:7000;
  }
}


/* v2.1.15 - adempimento e calendario nello stesso riquadro */
.scp-quick-adempimento-box{
  display:grid !important;
  grid-template-columns:minmax(190px, .8fr) minmax(260px, 1.35fr) auto;
  align-items:end;
  gap:12px;
}
.scp-quick-task-heading{
  min-width:0;
}
.scp-quick-obligation-field{
  margin:0 !important;
  min-width:0;
}
.scp-quick-obligation-field select{
  width:100%;
}
.scp-quick-obligation-field small{
  margin-top:4px;
  font-size:11px;
  line-height:1.25;
}
.scp-quick-task-buttons-calendar{
  display:flex !important;
  flex-wrap:nowrap;
  align-items:flex-end;
  justify-content:flex-end;
  gap:7px;
}
.scp-quick-task-buttons-calendar .scp-btn{
  white-space:nowrap;
}
@media (max-width:920px){
  .scp-quick-adempimento-box{
    grid-template-columns:1fr;
    align-items:stretch;
  }
  .scp-quick-task-buttons-calendar{
    justify-content:stretch;
    display:grid !important;
    grid-template-columns:1fr 1fr;
  }
  .scp-quick-task-buttons-calendar .scp-btn{
    width:100%;
  }
}
@media (max-width:430px){
  .scp-quick-task-buttons-calendar{
    grid-template-columns:1fr;
  }
}

/* v2.1.17 - percorsi distinti: adempimento standard e inserimento rapido */
.scp-task-form-quick .scp-quick-entry-box{
  display:grid !important;
  grid-template-columns:minmax(180px,1fr) auto;
  align-items:end;
  gap:12px;
}
.scp-task-form-quick .scp-quick-required-box{
  display:grid;
  grid-template-columns:minmax(220px,.9fr) minmax(260px,1.1fr);
  gap:12px;
  padding:12px;
  border:1px solid rgba(31,95,139,.18);
  border-radius:16px;
  background:#f8fbff;
}
.scp-task-form-quick .scp-quick-required-box label{
  margin:0;
}
.scp-required-inline{
  display:inline-block;
  margin-left:6px;
  padding:2px 7px;
  border-radius:999px;
  background:#e8f2fb;
  color:#1f5f8b;
  font-size:11px;
  font-weight:900;
  vertical-align:middle;
}
.scp-task-form-standard .scp-quick-save-row .scp-btn{
  min-width:170px;
}
@media (max-width:820px){
  .scp-task-form-quick .scp-quick-entry-box,
  .scp-task-form-quick .scp-quick-required-box{
    grid-template-columns:1fr;
    align-items:stretch;
  }
  .scp-task-form-quick .scp-quick-task-buttons-calendar{
    display:grid !important;
    grid-template-columns:1fr;
  }
  .scp-task-form-quick .scp-quick-task-buttons-calendar .scp-btn{
    width:100%;
  }
}

/* v2.1.19 - separazione aree Clienti / Adempimenti */
.scp-archive-panel[data-scp-archive-section="clients"] #scp-recurring-panel,
.scp-archive-panel[data-scp-archive-section="clients"] #scp-obligations-panel,
.scp-archive-panel[data-scp-archive-section="clients"] .scp-company-obligations-section {
  display:none !important;
}
.scp-archive-panel[data-scp-archive-section="obligations"] #scp-import-clients-panel,
.scp-archive-panel[data-scp-archive-section="obligations"] #scp-export-clients-panel,
.scp-archive-panel[data-scp-archive-section="obligations"] #scp-companies-panel {
  display:none !important;
}
.scp-archive-panel[data-scp-archive-section="obligations"] .scp-archive-grid {
  grid-template-columns: minmax(0, 1fr);
}


/* v2.1.20 - archivio clienti a tutta pagina e adempimenti senza tipo */
.scp-archive-panel[data-scp-archive-section="clients"] .scp-archive-grid {
  grid-template-columns: minmax(0, 1fr);
}
.scp-archive-panel[data-scp-archive-section="clients"] #scp-companies-panel {
  width: 100%;
}
.scp-archive-panel[data-scp-archive-section="clients"] .scp-company-form,
.scp-archive-panel[data-scp-archive-section="obligations"] .scp-obligation-form {
  align-items:start;
}
.scp-archive-panel[data-scp-archive-section="clients"] .scp-company-form > label,
.scp-archive-panel[data-scp-archive-section="clients"] .scp-company-form > .scp-span-2,
.scp-archive-panel[data-scp-archive-section="obligations"] .scp-obligation-form > label,
.scp-archive-panel[data-scp-archive-section="obligations"] .scp-obligation-form > .scp-span-2 {
  min-width:0;
}
.scp-archive-panel[data-scp-archive-section="clients"] .scp-archive-actions,
.scp-archive-panel[data-scp-archive-section="obligations"] .scp-archive-actions {
  justify-content:flex-start;
}
@media (min-width: 901px) {
  .scp-archive-panel[data-scp-archive-section="clients"] .scp-company-form,
  .scp-archive-panel[data-scp-archive-section="obligations"] .scp-obligation-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* v2.1.21 - nasconde lo stato operativo visibile: lo stato resta tecnico interno. */

/* v2.1.22 - cliente libero nell'inserimento scadenza */
.scp-task-company-free input{
  width:100%;
}
.scp-task-company-free input.is-manual-client{
  border-color:#22c55e;
  background:#f0fdf4;
  box-shadow:0 0 0 2px rgba(34,197,94,.12);
}
.scp-task-form-quick .scp-task-assignee-box{
  grid-column:1 / -1;
}
@media (max-width:820px){
  .scp-task-form-quick .scp-task-assignee-box{
    grid-column:auto;
  }
}


/* v2.1.23 - cliente rapido in campo unico selezionabile/scrivibile */
.scp-task-form-quick .scp-task-company-combo{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.scp-task-form-quick .scp-task-company-combo input[type="text"]{
  width:100%;
}
.scp-task-form-quick .scp-task-company-combo input[type="text"]:not(.is-manual-client){
  border-color:rgba(31,95,139,.35);
}


/* v2.1.24 - cliente nelle sotto-attività più evidente */
.scp-subtask-company{
  display:block;
  font-size:16px;
  line-height:1.22;
  font-weight:900;
  color:#111827;
  letter-spacing:-.01em;
}
.scp-subtask-inline-detail,
.scp-subtask-static-inline{
  align-items:flex-start;
  flex-wrap:wrap;
  gap:4px 6px;
}
.scp-subtask-inline-detail .scp-subtask-company,
.scp-subtask-static-inline .scp-subtask-company{
  flex:1 0 100%;
}
.scp-subtask-inline-separator{
  display:none;
}
.scp-subtask-detail-static,
.scp-subtask-detail-print:not(.is-empty),
.scp-subtask-inline-detail textarea{
  margin-top:1px;
}
.scp-subtask-fields input[data-scp-subtask-title],
.scp-quick-subtask-form input[name="description"]{
  font-size:16px;
  line-height:1.25;
  font-weight:800;
  color:#111827;
}
.scp-subtask-fields input[data-scp-subtask-title]::placeholder,
.scp-quick-subtask-form input[name="description"]::placeholder{
  font-weight:700;
  color:#64748b;
}
.scp-subtask-item.is-done .scp-subtask-company{
  color:var(--scp-muted);
}
@media (max-width:820px){
  .scp-subtask-company{
    font-size:15.5px;
  }
  .scp-subtask-fields input[data-scp-subtask-title],
  .scp-quick-subtask-form input[name="description"]{
    font-size:15.5px;
  }
}
@media print{
  .scp-subtask-inline-separator{
    display:inline !important;
  }
  .scp-subtask-company{
    font-size:9.2pt !important;
    line-height:1.15 !important;
    font-weight:900 !important;
  }
}

/* v2.1.25 - cliente collegato evidenziato anche quando l'attività contiene sotto-attività */
.scp-task-client-detail-wrap{
  margin-top:9px;
}
.scp-task-client-detail-item{
  border-color:rgba(31,95,139,.28);
  background:linear-gradient(90deg, rgba(239,246,255,.98), rgba(255,255,255,.98));
}
.scp-task-client-detail-item .scp-subtask-company{
  display:block;
  font-size:16px;
  line-height:1.22;
  font-weight:900;
  color:#0f172a;
  letter-spacing:-.01em;
}
.scp-task-client-detail-item .scp-subtask-toggle.is-static{
  border-color:#1f5f8b;
  background:#fff;
  opacity:.72;
}
.scp-task-client-detail-item .scp-subtask-toggle.is-static:after{
  content:'';
}
@media (max-width:820px){
  .scp-task-client-detail-item .scp-subtask-company{
    font-size:15.5px;
  }
}


/* v2.1.26 - cliente collegato come riquadro informativo, senza descrizione e senza flag */
.scp-task-client-detail-simple{
  grid-template-columns:minmax(0, 1fr) !important;
  padding:7px 10px;
}
.scp-task-client-detail-simple .scp-task-client-title-only{
  width:100%;
  display:block;
}
.scp-task-client-detail-simple .scp-subtask-company{
  display:block;
}
.scp-task-client-detail-simple .scp-subtask-toggle,
.scp-task-client-detail-simple .scp-subtask-inline-separator,
.scp-task-client-detail-simple textarea,
.scp-task-client-detail-simple .scp-subtask-autosave-note,
.scp-task-client-detail-simple .scp-subtask-detail-print,
.scp-task-client-detail-simple .scp-subtask-detail-static{
  display:none !important;
}

/* v2.1.27 - scelta preventiva Nuova scadenza desktop */
.scp-new-task-choice-panel{
  border:1px solid rgba(15, 23, 42, .10);
}
.scp-new-task-choice-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
  margin-top:12px;
}
.scp-new-task-choice-card{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-height:140px;
  padding:18px;
  border:1px solid rgba(15, 23, 42, .14);
  border-radius:18px;
  background:#fff;
  text-decoration:none;
  color:inherit;
  box-shadow:0 10px 24px rgba(15, 23, 42, .06);
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.scp-new-task-choice-card:hover,
.scp-new-task-choice-card:focus{
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(15, 23, 42, .10);
  border-color:rgba(37, 99, 235, .45);
  outline:none;
}
.scp-new-task-choice-card strong{
  font-size:22px;
  line-height:1.1;
}
.scp-new-task-choice-card small{
  font-size:14px;
  line-height:1.35;
  color:#475569;
}
.scp-choice-icon{
  width:42px;
  height:42px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
  font-weight:800;
  background:#eff6ff;
  color:#1d4ed8;
}
@media (max-width: 700px){
  .scp-new-task-choice-grid{grid-template-columns:1fr;}
  .scp-new-task-choice-card{min-height:112px; padding:16px;}
}


/* v2.1.28 - + Nuova come tendina/popup Rapido-Standard */
.scp-new-task-menu{
  position:relative !important;
  display:inline-flex !important;
  flex:0 0 auto !important;
  width:auto !important;
  overflow:visible !important;
  z-index:75;
}
.scp-new-task-menu[open]{z-index:1100;}
.scp-new-task-menu > summary{
  list-style:none !important;
  cursor:pointer;
}
.scp-new-task-menu > summary::-webkit-details-marker{display:none;}
.scp-new-task-menu-summary::after{
  content:'▾';
  font-size:11px;
  margin-left:5px;
  line-height:1;
}
.scp-new-task-menu[open] .scp-new-task-menu-summary::after,
.scp-new-task-menu:hover .scp-new-task-menu-summary::after{
  content:'▴';
}
.scp-new-task-menu-panel{
  display:none;
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  min-width:240px;
  width:min(300px, calc(100vw - 28px));
  padding:10px;
  border:1px solid var(--scp-border);
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 42px rgba(17,42,70,.20);
  grid-template-columns:1fr;
  gap:8px;
}
.scp-new-task-menu[open] .scp-new-task-menu-panel,
.scp-new-task-menu:hover .scp-new-task-menu-panel,
.scp-new-task-menu:focus-within .scp-new-task-menu-panel{
  display:grid !important;
}
.scp-new-task-menu-item{
  display:grid;
  gap:2px;
  padding:11px 12px;
  border:1px solid rgba(15,23,42,.10);
  border-radius:13px;
  background:#f8fafc;
  color:#0f172a;
  text-decoration:none;
  line-height:1.2;
}
.scp-new-task-menu-item:hover,
.scp-new-task-menu-item:focus{
  background:#eff6ff;
  border-color:rgba(37, 99, 235, .38);
  outline:none;
}
.scp-new-task-menu-item strong{
  font-size:15px;
}
.scp-new-task-menu-item span{
  font-size:12px;
  color:#475569;
}
.scp-toolbar > .scp-new-task-menu > summary.scp-btn{
  flex:0 0 auto !important;
  white-space:nowrap !important;
  min-height:34px !important;
  padding:7px 10px !important;
  font-size:12.5px !important;
  line-height:1.15 !important;
}
@media(max-width:820px){
  .scp-toolbar[data-scp-mobile-tools].is-open > .scp-new-task-menu{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    flex:none !important;
    position:relative !important;
    display:block !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open > .scp-new-task-menu > summary.scp-btn{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    min-height:37px !important;
    padding:6px 5px !important;
    font-size:10.7px !important;
    line-height:1.08 !important;
    white-space:normal !important;
    text-align:center !important;
    justify-content:center !important;
    align-items:center !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-new-task-menu[open]{
    grid-column:1 / -1 !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-new-task-menu-panel{
    position:static !important;
    width:100% !important;
    min-width:0 !important;
    margin-top:8px !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    box-shadow:0 10px 26px rgba(17,42,70,.12) !important;
  }
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-new-task-menu-item{
    min-height:44px;
    text-align:center;
    align-content:center;
  }
}
@media(max-width:390px){
  .scp-toolbar[data-scp-mobile-tools].is-open .scp-new-task-menu-panel{
    grid-template-columns:1fr !important;
  }
}
