/* Pacchetto 1: finitura sobria per l'interfaccia operativa.
   Mantiene struttura, contenuti e branding Certosa; elimina barre laterali decorative,
   ombre diffuse e arrotondamenti eccessivi. */
body.p1-shell{
  --navy:#202b3c;
  --ink:#222b38;
  --bg:#f5f6f7;
  --muted:#667281;
  --line:#d9dfe5;
  --soft:#f7f8fa;
  --shadow:none;
  --focus:rgba(44,78,113,.18);
  background:var(--bg);
  color:var(--ink);
}
body.p1-shell .topbar{
  background:#fff!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
  border-bottom:1px solid var(--line);
}
body.p1-shell .drop{background:#d02637}
body.p1-shell .brandtext b,
body.p1-shell .brandtext .red{font-style:normal}
body.p1-shell .brandtext small{letter-spacing:.09em;font-size:.56rem}
body.p1-shell .sidebar{background:var(--navy)}
body.p1-shell .navgroups{padding:12px 12px 18px}
body.p1-shell .navgroup{gap:2px;padding:3px 0}
body.p1-shell .navgroup+.navgroup{
  border-top:1px solid rgba(255,255,255,.1);
  margin-top:10px;
  padding-top:13px;
}
body.p1-shell .navgroup .navlabel{
  color:#96a4b6;
  font-size:.68rem;
  font-weight:650;
  letter-spacing:.075em;
  margin:0 10px 7px;
}
body.p1-shell .navitem{
  border:0;
  border-radius:7px;
  min-height:37px;
  padding:8px 12px;
  color:#d1d9e3;
  font-size:.87rem;
  font-weight:540;
}
body.p1-shell .navitem:hover{background:#2c394c;color:#fff}
body.p1-shell .navitem.active{
  border:0;
  background:#3b4a5f;
  color:#fff;
  font-weight:680;
}
body.p1-shell .sidebar-foot .metx small{
  text-transform:none;
  font-size:.71rem;
  letter-spacing:0;
}
body.p1-shell .footlink.logout{color:#f1bec3}
body.p1-shell .wrap{max-width:1280px;padding:32px 36px 84px}
body.p1-shell .wrap h1{
  color:#1d2a3a;
  font-size:clamp(1.85rem,3vw,2.35rem);
  line-height:1.13;
  letter-spacing:-.025em;
  font-weight:650;
}
body.p1-shell .wrap h2{
  color:#253345;
  font-size:1.22rem;
  letter-spacing:-.01em;
  font-weight:650;
}
body.p1-shell .panel,
body.p1-shell .p1-campo-card,
body.p1-shell .p1-campo-head{
  border:1px solid var(--line);
  border-radius:10px;
  box-shadow:none;
}
body.p1-shell .panel{padding:21px 23px}
body.p1-shell .btn,
body.p1-shell button.btn{
  border-radius:8px;
  box-shadow:none;
  font-weight:630;
}
body.p1-shell .btn:active,
body.p1-shell button.btn:active{transform:none;filter:brightness(.94)}
body.p1-shell input[type=text],
body.p1-shell input[type=email],
body.p1-shell input[type=password],
body.p1-shell input[type=date],
body.p1-shell input[type=datetime-local],
body.p1-shell input[type=month],
body.p1-shell input[type=search],
body.p1-shell input[type=number],
body.p1-shell input[type=tel],
body.p1-shell input[type=url],
body.p1-shell input:not([type]),
body.p1-shell select,
body.p1-shell textarea{
  border-color:#cbd3dd;
  border-radius:8px;
  box-shadow:none;
}
body.p1-shell input:focus,
body.p1-shell select:focus,
body.p1-shell textarea:focus{
  border-color:#6883a5;
  box-shadow:0 0 0 3px var(--focus);
}
body.p1-shell .iconbtn,
body.p1-shell .p1-campo-tabs button,
body.p1-shell .p1-home-search input{border-radius:8px}
body.p1-shell .iconbtn:hover{color:var(--navy)}
body.p1-shell .p1-demo-banner{
  border:1px solid #e3c68f;
  background:#fff8e9;
  border-radius:8px;
  box-shadow:none;
}
body.p1-shell .p1-form-error{
  border:1px solid #e8bcbc;
  background:#fff8f7;
}
body.p1-shell .p1-avviso.open{
  border:1px solid #e3d7b7;
  background:#fffdf8;
}
body.p1-shell .prof-hero,
body.p1-shell .access-panel,
body.p1-shell .danger-zone{
  border-left:1px solid var(--line)!important;
}
body.p1-shell .p1-home-kpis{gap:10px}
body.p1-shell .p1-home-kpis a{
  min-height:104px;
  padding:18px;
  border-radius:10px;
  box-shadow:none;
}
body.p1-shell .p1-home-kpis strong{
  font-size:1.85rem;
  font-weight:680;
}
body.p1-shell .p1-home-kpis span{font-size:.86rem}
body.p1-shell .p1-home-notice{padding:11px 0}
body.p1-shell .p1-anag-row,
body.p1-shell .p1-intervento,
body.p1-shell .p1-contract-list a,
body.p1-shell .p1-ag-card,
body.p1-shell .p1-week-item,
body.p1-shell .p1-week-table .p1-week-item{
  border-radius:8px;
  box-shadow:none;
}
body.p1-shell .p1-anag-row:hover,
body.p1-shell .p1-intervento:hover,
body.p1-shell .p1-home-kpis a:hover{
  transform:none;
  box-shadow:none;
  border-color:#aab5c2;
}
body.p1-shell .p1-campo-card{padding:16px}
body.p1-shell .p1-campo-badge{
  border-radius:5px;
  background:#e9eef4;
  color:#334963;
}
body.p1-shell .p1-campo-status{
  border-radius:7px;
  background:#f0f3f7;
}
body.p1-shell .p1-stats{
  gap:0;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
  overflow:hidden;
}
body.p1-shell .p1-stats span{
  border-right:1px solid var(--line);
  border-radius:0;
  background:transparent;
  margin:0;
}
body.p1-shell .wrap table:not(.fo-agenda) th{
  background:#f7f8fa;
  color:#596677;
  font-size:.73rem;
  font-weight:680;
  letter-spacing:.015em;
  text-transform:none;
}
body.p1-shell .wrap table:not(.fo-agenda) td{border-bottom-color:#e7ebef}
body.p1-shell .p1-filter-box summary,
body.p1-shell .p1-bulk-turns summary{font-weight:650}
body.p1-shell .logincard{border-radius:12px;box-shadow:0 8px 28px rgba(24,35,54,.09)}
@media(max-width:700px){
  body.p1-shell .wrap{padding:22px 16px 70px}
  body.p1-shell .panel{padding:18px}
  body.p1-shell .p1-home-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  body.p1-shell .p1-home-kpis a{min-height:98px;padding:14px}
  body.p1-shell .p1-home-kpis strong{font-size:1.7rem}
  body.p1-shell .p1-home-kpis a:last-child:nth-child(odd){grid-column:1/-1}
  body.p1-shell .p1-stats span{border-bottom:1px solid var(--line)}
}
