/* FCP 14.7.51 - Task cards hard reset desktop/mobile
   Obiettivo: neutralizzare definitivamente i vecchi layer mobile/task che spostavano
   data, checkbox, menu e pulsanti in posizioni assolute anche su desktop. */
:root{
  --fcp51-blue:#2563eb;
  --fcp51-blue-dark:#1d4ed8;
  --fcp51-blue-soft:#eff6ff;
  --fcp51-text:#0f172a;
  --fcp51-muted:#64748b;
  --fcp51-border:#e5eaf3;
  --fcp51-card:#ffffff;
  --fcp51-shadow:0 14px 34px rgba(15,23,42,.065);
  --fcp51-shadow-hover:0 18px 44px rgba(37,99,235,.10);
}

body .fcp-mobile-task-bucket-list,
body .fcp-task-bucket-saas .fcp-mobile-task-bucket-list,
body .fcp-app-task-page .fcp-mobile-task-bucket-list{
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  width:100%!important;
  overflow:visible!important;
}

body article[data-fcp-task-card],
body .fcp-mobile-task-card[data-fcp-task-card],
body .fcp-task43-card,
body .fcp-task51-card{
  box-sizing:border-box!important;
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  float:none!important;
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) minmax(245px,auto)!important;
  grid-template-areas:
    "check meta controls"
    ". main actions"!important;
  align-items:start!important;
  column-gap:14px!important;
  row-gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:18px 18px 18px 18px!important;
  background:var(--fcp51-card)!important;
  border:1px solid var(--fcp51-border)!important;
  border-radius:22px!important;
  box-shadow:var(--fcp51-shadow)!important;
  color:var(--fcp51-text)!important;
  overflow:hidden!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
body article[data-fcp-task-card] *,
body .fcp-mobile-task-card[data-fcp-task-card] *,
body .fcp-task43-card *,
body .fcp-task51-card *{box-sizing:border-box!important;}

body article[data-fcp-task-card]::before,
body .fcp-task43-card::before,
body .fcp-task51-card::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:18px!important;
  bottom:18px!important;
  width:4px!important;
  border-radius:0 999px 999px 0!important;
  background:transparent!important;
}
body article[data-fcp-task-card].is-meta-gsheet::before,
body .fcp-task43-card.is-meta-gsheet::before,
body .fcp-task51-card.is-meta-gsheet::before{background:var(--fcp51-blue)!important;}
body article[data-fcp-task-card].is-overdue::before,
body .fcp-task43-card.is-overdue::before,
body .fcp-task51-card.is-overdue::before{background:#dc2626!important;}
body article[data-fcp-task-card].is-done,
body .fcp-task43-card.is-done,
body .fcp-task51-card.is-done{background:#f8fafc!important;opacity:.76!important;}

body .fcp-task43-header,
body .fcp-task51-header{
  display:contents!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

body .fcp-task43-check,
body .fcp-task51-check,
body button.fcp-mobile-task-check{
  all:unset!important;
  box-sizing:border-box!important;
  grid-area:check!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  margin:1px 0 0!important;
  padding:0!important;
  border:2px solid #cbd5e1!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#fff!important;
  cursor:pointer!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
  box-shadow:0 2px 8px rgba(15,23,42,.04)!important;
}
body .fcp-task43-card.is-done .fcp-task43-check,
body .fcp-task51-card.is-done .fcp-task51-check,
body article[data-fcp-task-card].is-done .fcp-mobile-task-check{background:var(--fcp51-blue)!important;border-color:var(--fcp51-blue)!important;}
body .fcp-task43-card.is-done .fcp-task43-check::after,
body .fcp-task51-card.is-done .fcp-task51-check::after,
body article[data-fcp-task-card].is-done .fcp-mobile-task-check::after{content:"✓"!important;font-weight:900!important;font-size:18px!important;line-height:1!important;color:#fff!important;}

body .fcp-task43-meta,
body .fcp-task51-meta{
  grid-area:meta!important;
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
}
body .fcp-task43-date,
body .fcp-task43-time,
body .fcp-task51-date,
body .fcp-task51-time{
  display:inline-flex!important;
  align-items:center!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
  margin:0!important;
  padding:0!important;
  color:var(--fcp51-text)!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:850!important;
  white-space:nowrap!important;
  letter-spacing:.01em!important;
}
body .fcp-task43-status,
body .fcp-task51-status{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
  margin:0!important;
  padding:0!important;
  color:var(--fcp51-blue)!important;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:850!important;
  white-space:nowrap!important;
}
body .fcp-task43-status i,
body .fcp-task51-status i{display:inline-block!important;width:7px!important;height:7px!important;border-radius:999px!important;background:var(--fcp51-blue)!important;}

body .fcp-task43-controls,
body .fcp-task51-controls{
  grid-area:controls!important;
  justify-self:end!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  min-width:max-content!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
}
body .fcp-task43-priority,
body .fcp-task51-priority{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:34px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  background:var(--fcp51-blue-soft)!important;
  border:1px solid #dbeafe!important;
  color:#1d4ed8!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
  font-size:12px!important;
  font-weight:900!important;
  white-space:nowrap!important;
  line-height:1!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
}
body .fcp-task43-priority.prio-high,
body .fcp-task43-priority.prio-urgent,
body .fcp-task51-priority.prio-high,
body .fcp-task51-priority.prio-urgent{background:#fef2f2!important;color:#b91c1c!important;border-color:#fecaca!important;}
body .fcp-task43-priority.prio-medium,
body .fcp-task51-priority.prio-medium{background:#fffbeb!important;color:#b45309!important;border-color:#fde68a!important;}
body .fcp-task43-priority.prio-low,
body .fcp-task51-priority.prio-low{background:#ecfdf5!important;color:#047857!important;border-color:#bbf7d0!important;}
body .fcp-task43-more,
body .fcp-task51-more,
body button.fcp-mobile-task-more{
  all:unset!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  border:1px solid var(--fcp51-border)!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#334155!important;
  cursor:pointer!important;
  font-size:18px!important;
  font-weight:900!important;
  letter-spacing:2px!important;
  line-height:1!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
}

body .fcp-task43-main,
body .fcp-task51-main,
body button.fcp-mobile-task-body{
  all:unset!important;
  box-sizing:border-box!important;
  grid-area:main!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-align:left!important;
  color:inherit!important;
  cursor:pointer!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
}
body .fcp-task43-title,
body .fcp-task51-title{
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:var(--fcp51-text)!important;
  font-size:20px!important;
  line-height:1.22!important;
  font-weight:900!important;
  letter-spacing:-.025em!important;
  overflow-wrap:anywhere!important;
  max-width:100%!important;
}
body .fcp-task43-client,
body .fcp-task51-client{
  display:block!important;
  margin:6px 0 0!important;
  color:#475569!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.35!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body .fcp-task43-description,
body .fcp-task51-description{
  display:-webkit-box!important;
  margin:8px 0 0!important;
  color:var(--fcp51-muted)!important;
  font-size:14px!important;
  font-weight:650!important;
  line-height:1.45!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  max-width:100%!important;
}

body .fcp-task43-actions,
body .fcp-task51-actions,
body .fcp-mobile-task-actions-14720{
  grid-area:actions!important;
  align-self:end!important;
  justify-self:end!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  width:245px!important;
  max-width:245px!important;
  margin:0!important;
  padding:0!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body .fcp-task43-actions:empty,
body .fcp-task51-actions:empty{display:none!important;}
body .fcp-task43-primary,
body .fcp-task43-secondary,
body .fcp-task51-primary,
body .fcp-task51-secondary,
body .fcp-task-action-primary,
body .fcp-task-action-secondary{
  all:unset!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:42px!important;
  padding:0 13px!important;
  border-radius:13px!important;
  text-decoration:none!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1!important;
  cursor:pointer!important;
  text-align:center!important;
  position:static!important;
  inset:auto!important;
  transform:none!important;
  white-space:nowrap!important;
}
body .fcp-task43-primary,
body .fcp-task51-primary,
body .fcp-task-action-primary{background:linear-gradient(135deg,var(--fcp51-blue),var(--fcp51-blue-dark))!important;color:#fff!important;border:1px solid var(--fcp51-blue)!important;box-shadow:0 10px 22px rgba(37,99,235,.22)!important;}
body .fcp-task43-secondary,
body .fcp-task51-secondary,
body .fcp-task-action-secondary{background:#fff!important;color:#0f172a!important;border:1px solid #dbe3ef!important;box-shadow:0 6px 16px rgba(15,23,42,.04)!important;}
body article[data-fcp-task-card]:hover,
body .fcp-task43-card:hover,
body .fcp-task51-card:hover{border-color:#d8e4f6!important;box-shadow:var(--fcp51-shadow-hover)!important;}

@media (max-width:780px){
  body article[data-fcp-task-card],
  body .fcp-mobile-task-card[data-fcp-task-card],
  body .fcp-task43-card,
  body .fcp-task51-card{
    grid-template-columns:42px minmax(0,1fr) auto!important;
    grid-template-areas:
      "check meta controls"
      ". main main"
      ". actions actions"!important;
    column-gap:12px!important;
    row-gap:12px!important;
    padding:16px!important;
    border-radius:22px!important;
  }
  body .fcp-task43-meta,
  body .fcp-task51-meta{gap:6px!important;align-self:center!important;}
  body .fcp-task43-date,
  body .fcp-task43-time,
  body .fcp-task51-date,
  body .fcp-task51-time{font-size:13px!important;}
  body .fcp-task43-status,
  body .fcp-task51-status{font-size:12px!important;}
  body .fcp-task43-title,
  body .fcp-task51-title{font-size:19px!important;line-height:1.2!important;}
  body .fcp-task43-client,
  body .fcp-task51-client{white-space:normal!important;}
  body .fcp-task43-actions,
  body .fcp-task51-actions,
  body .fcp-mobile-task-actions-14720{width:100%!important;max-width:100%!important;justify-self:stretch!important;grid-template-columns:1fr 1fr!important;}
  body .fcp-task43-primary,
  body .fcp-task43-secondary,
  body .fcp-task51-primary,
  body .fcp-task51-secondary,
  body .fcp-task-action-primary,
  body .fcp-task-action-secondary{min-height:44px!important;font-size:14px!important;}
}

@media (max-width:420px){
  body article[data-fcp-task-card],
  body .fcp-mobile-task-card[data-fcp-task-card],
  body .fcp-task43-card,
  body .fcp-task51-card{grid-template-columns:38px minmax(0,1fr) auto!important;padding:15px!important;}
  body .fcp-task43-priority,
  body .fcp-task51-priority{height:31px!important;padding:0 10px!important;font-size:11px!important;}
  body .fcp-task43-more,
  body .fcp-task51-more,
  body button.fcp-mobile-task-more{width:38px!important;height:38px!important;min-width:38px!important;}
  body .fcp-task43-actions,
  body .fcp-task51-actions,
  body .fcp-mobile-task-actions-14720{gap:8px!important;}
}

body .fcp-mobile-task-panel,
body .fcp-app-task-page,
body .fcp-mobile-task-bucket,
body .fcp-task-bucket-saas{padding-bottom:160px!important;}
