/* MotoDealer Pro - gestionale. Modalità "operativa": chiaro, denso il giusto, tocchi grandi. */
@font-face{font-family:"Big Shoulders Display";src:url(../fonts/big-shoulders.woff2) format("woff2");font-weight:700 900;font-display:swap}
@font-face{font-family:"Onest";src:url(../fonts/onest.woff2) format("woff2");font-weight:400 700;font-display:swap}
:root{--asfalto:#14100E;--grafite:#2A231F;--carta:#F4EFE7;--carta-2:#FBF8F3;--bianco:#fff;--inchiostro:#1B1613;--grigio:#62574E;--rosso:#CF2E19;--rosso-sc:#A92312;--rosso-vivo:#FF5A3C;--ocra:#E8A33D;--ok:#2F8F5B;--blu:#2D5D86;--bordo:#DDD3C6;
  --titoli:"Big Shoulders Display","Arial Narrow",Impact,sans-serif;--testo:"Onest",system-ui,-apple-system,"Segoe UI",sans-serif;--r:10px;--lato:248px;--ease:cubic-bezier(.16,1,.3,1);--sfondo-marchio:#14100E}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body.adm{margin:0;font-family:var(--testo);font-size:1rem;line-height:1.5;color:var(--inchiostro);background:var(--carta);font-variant-numeric:lining-nums;min-height:100vh}
img,svg{max-width:100%}a{color:var(--rosso-sc)}
::selection{background:var(--rosso);color:#fff}
:focus-visible{outline:3px solid var(--rosso-vivo);outline-offset:2px;border-radius:4px}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.salta{position:absolute;left:-999px;top:0;background:#fff;padding:.7rem 1rem;z-index:300}.salta:focus{left:.5rem;top:.5rem}
::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-thumb{background:#b9ac9b;border-radius:8px;border:3px solid var(--carta)}
h1,h2,h3{font-family:var(--titoli);text-transform:uppercase;font-weight:800;line-height:1;margin:0 0 .5em;letter-spacing:.005em;text-wrap:balance}
h1{font-size:clamp(1.9rem,4vw,2.6rem)}h2{font-size:1.5rem}h3{font-size:1.2rem}
.num,td,.tab-num{font-variant-numeric:tabular-nums}
/* struttura */
.adm-top{display:none}
.adm-corpo{display:grid;grid-template-columns:var(--lato) minmax(0,1fr);min-height:100vh}
.adm-nav{background:var(--asfalto);color:#e6dccf;padding:1rem .75rem;position:sticky;top:0;height:100vh;overflow:auto;display:flex;flex-direction:column;gap:.6rem}
.adm-logo{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;color:#fff;font-family:var(--titoli);font-weight:900;font-size:1.3rem;letter-spacing:.04em;line-height:1}
.adm-logo .marchio-svg{color:var(--rosso)}
.adm-logo-lato{padding:.4rem .5rem 1rem}
.adm-nav ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.adm-nav a{display:flex;align-items:center;gap:.7rem;padding:.65rem .75rem;border-radius:8px;color:#e6dccf;text-decoration:none;font-weight:500;min-height:44px;transition:background .2s}
.adm-nav ul a:hover{background:rgba(255,255,255,.09)}
.adm-nav a[aria-current=page]{background:var(--rosso);color:#fff}
.adm-nav .ico{flex:none}
.badge{margin-left:auto;background:var(--ocra);color:#2a1d08;font-size:.75rem;font-weight:800;border-radius:99px;padding:.05rem .5rem;min-width:22px;text-align:center}
.adm-nav-sec{margin-top:auto;padding-top:.8rem;border-top:1px solid rgba(255,255,255,.12)}
.adm-nav-sec a{font-size:.92rem;min-height:40px;padding:.45rem .75rem}
.adm-credit{font-size:.78rem;color:#9a8e82;margin:.6rem .5rem 0}.adm-credit a{display:inline;color:#fff;padding:0;min-height:0}
.adm-main{padding:1.5rem clamp(1rem,3vw,2.2rem) 4rem;min-width:0;max-width:1320px;width:100%}
.adm-titolo{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.2rem}.adm-titolo h1{margin:0}
.adm-azioni{display:flex;gap:.5rem;flex-wrap:wrap}
.adm-avviso{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;background:#fff3da;border:1px solid #ecd6a8;color:#4a3a1c;border-radius:var(--r);padding:.6rem .9rem;margin-bottom:1rem;font-size:.92rem}
.adm-avviso-demo{background:#e3eef8;border-color:#a9c7e2;color:#14344f}
.adm-flash{padding:.8rem 1rem;border-radius:var(--r);margin-bottom:1rem;font-weight:600}.adm-flash-ok{background:#e4f3ea;border:1px solid #9bd0b2;color:#0f3d24}.adm-flash-ko{background:#fde8e4;border:1px solid #f0a99c;color:#6b1608}.adm-flash-warn{background:#fff3da;border:1px solid #ecd6a8;color:#4a3a1c}
/* componenti */
.card{background:var(--bianco);border:1px solid var(--bordo);border-radius:var(--r);padding:1.1rem 1.2rem;margin-bottom:1rem}
.card h2{margin-bottom:.8rem}
.griglia{display:grid;gap:1rem}.g2{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}.g-lato{grid-template-columns:minmax(0,1fr)}
@media (min-width:1100px){.g-lato{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:44px;padding:.55rem 1.1rem;border-radius:99px;border:2px solid transparent;font:600 .95rem/1.1 var(--testo);text-decoration:none;cursor:pointer;background:var(--asfalto);color:#fff;transition:background .2s,transform .15s}
.btn:hover{background:var(--grafite)}.btn:active{transform:translateY(1px)}
.btn-p{background:var(--rosso)}.btn-p:hover{background:var(--rosso-sc)}
.btn-c{background:transparent;color:var(--inchiostro);border-color:#b6a893}.btn-c:hover{background:var(--inchiostro);color:#fff;border-color:var(--inchiostro)}
.btn-ok{background:var(--ok)}.btn-ok:hover{background:#25774b}
.btn-s{min-height:36px;padding:.3rem .8rem;font-size:.86rem}
.btn-pericolo{background:transparent;color:#a0180a;border-color:#e0a79e}.btn-pericolo:hover{background:#a0180a;color:#fff}
.chip{display:inline-flex;align-items:center;font-size:.76rem;font-weight:700;padding:.18rem .6rem;border-radius:99px;background:#e8e0d4;color:#3b322c;white-space:nowrap}
.chip-verde{background:#d9efe2;color:#0f5a32}.chip-blu{background:#dbe9f5;color:#14456e}.chip-ocra{background:#fbe8c4;color:#6b4a07}.chip-rosso{background:#fbd9d2;color:#8a1b0c}.chip-spento{background:#ebe6df;color:#6a5f55}.chip-grigio{background:#e8e0d4;color:#3b322c}
label{display:block;font-weight:600;font-size:.88rem;margin-bottom:.25rem}
input,select,textarea{font:inherit;color:var(--inchiostro);background:#fff;border:1.5px solid #c9bcab;border-radius:8px;padding:.55rem .7rem;min-height:44px;width:100%}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--rosso);box-shadow:0 0 0 3px rgba(207,46,25,.2)}
input[type=checkbox],input[type=radio]{width:20px;height:20px;min-height:0;accent-color:var(--rosso);padding:0}
textarea{min-height:90px;resize:vertical}
input[type=file]{padding:.45rem}
.cmp{display:grid;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));align-items:end}.cmp>div.largo{grid-column:1/-1}
.sp{display:flex;gap:.6rem;align-items:center}.sp input[type=checkbox]{flex:none}.sp label{margin:0;font-weight:500}
.hint{font-size:.84rem;color:var(--grigio)}
.barra{display:flex;gap:.6rem;flex-wrap:wrap;align-items:end;margin-bottom:1rem}.barra .campo{min-width:160px}
.barra input,.barra select{min-height:42px}.barra .campo{flex:1 1 170px;max-width:340px}
/* tabelle */
.tab{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--bordo);border-radius:var(--r);overflow:hidden}
.tab th{background:#efe8dd;text-align:left;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;padding:.6rem .8rem;color:#4a3f38;white-space:nowrap}
.tab td{padding:.65rem .8rem;border-top:1px solid #eee5d9;vertical-align:middle}
.tab tr:hover td{background:#fcfaf6}
.tab a.riga{font-weight:700;text-decoration:none;color:var(--inchiostro)}.tab a.riga:hover{color:var(--rosso)}
.tab .dx{text-align:right}.tab small{display:block;color:var(--grigio)}
.tab-scroll{overflow-x:auto;border-radius:var(--r)}
.adm-vuoto{padding:2rem 1rem;text-align:center;color:var(--grigio);border:2px dashed var(--bordo);border-radius:var(--r);background:#fff}
@media (max-width:760px){
  .tab-card thead{display:none}.tab-card,.tab-card tbody,.tab-card tr,.tab-card td{display:block;width:100%}
  .tab-card{border:0;background:none}.tab-card tr{background:#fff;border:1px solid var(--bordo);border-radius:var(--r);margin-bottom:.7rem;padding:.4rem .2rem}
  .tab-card td{border:0;padding:.3rem .8rem;display:flex;gap:.8rem;justify-content:space-between;align-items:baseline;text-align:right}
  .tab-card td::before{content:attr(data-l);font-weight:600;color:var(--grigio);font-size:.82rem;text-align:left;flex:none}
  .tab-card td:first-child{display:block;text-align:left;font-size:1.05rem}.tab-card td:first-child::before{display:none}
  .tab-card tr:hover td{background:none}
}
/* kpi */
.kpi{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));margin-bottom:1rem}
.kpi a,.kpi div{background:#fff;border:1px solid var(--bordo);border-radius:var(--r);padding:.8rem 1rem;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:.1rem;transition:border-color .2s,transform .2s}
.kpi a:hover{border-color:var(--rosso);transform:translateY(-2px)}
.kpi b{font-family:var(--titoli);font-size:2.3rem;line-height:1;font-weight:900}.kpi span{font-size:.85rem;color:var(--grigio)}
.kpi .allerta b{color:var(--rosso)}
.lista{list-style:none;margin:0;padding:0}.lista li{display:flex;gap:.8rem;justify-content:space-between;align-items:center;padding:.65rem 0;border-top:1px solid #eee5d9}.lista li:first-child{border-top:0}
.lista .cresce{flex:1;min-width:0}.lista small{display:block;color:var(--grigio)}
.lista a.riga{color:var(--inchiostro);text-decoration:none;font-weight:700}.lista a.riga:hover{color:var(--rosso);text-decoration:underline}
/* scheda lavoro */
.stati{display:flex;gap:.4rem;flex-wrap:wrap}
.stati form{display:contents}
.stati button{min-height:44px;padding:.4rem .9rem;border-radius:99px;border:2px solid #c9bcab;background:#fff;font:600 .9rem var(--testo);cursor:pointer}
.stati button[aria-pressed=true]{background:var(--asfalto);color:#fff;border-color:var(--asfalto)}
.stati button:hover{border-color:var(--rosso)}
.timeline{list-style:none;margin:0;padding:0 0 0 1rem;background:linear-gradient(var(--bordo),var(--bordo)) 0 0/2px 100% no-repeat}.timeline li{position:relative;padding:.1rem 0 .8rem .9rem}.timeline li::before{content:"";position:absolute;left:-1.4rem;top:.45rem;width:10px;height:10px;border-radius:50%;background:var(--rosso)}
.timeline small{color:var(--grigio)}
.foto-griglia{display:grid;gap:.6rem;grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.foto-griglia figure{margin:0;font-size:.8rem}.foto-griglia img,.foto-griglia video{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;background:#1a1512;display:block}
.firma-box{border:1.5px dashed #b6a893;border-radius:var(--r);background:#fff;touch-action:none;width:100%;height:150px;display:block}
.totali{display:grid;gap:.3rem;margin-top:.6rem;text-align:right}.totali b{font-family:var(--titoli);font-size:1.6rem}
/* login e setup */
.login{min-height:100vh;display:grid;place-items:center;background:var(--asfalto);padding:1rem}
.login-box{background:#fff;border-radius:16px;padding:1.6rem;width:min(100%,420px);display:grid;gap:1rem}
.login-box .adm-logo{color:var(--asfalto)}.login-box h1{margin:0}
/* calendario */
.cal-sett{display:grid;gap:.7rem;grid-template-columns:repeat(7,minmax(0,1fr))}
@media (max-width:900px){.cal-sett{grid-template-columns:1fr}}
.cal-g{background:#fff;border:1px solid var(--bordo);border-radius:var(--r);padding:.6rem;min-height:140px}.cal-g.oggi{border-color:var(--rosso);box-shadow:0 0 0 2px rgba(207,46,25,.18)}.cal-g.chiuso{background:#efe9df}
.cal-g h3{font-size:1.05rem;margin-bottom:.4rem}
.cal-ev{display:block;font-size:.82rem;border-radius:6px;padding:.3rem .45rem;margin-bottom:.3rem;text-decoration:none;color:var(--inchiostro);background:#e3eef8;border-left:0}
.cal-ev.prova{background:#fbe8c4}.cal-ev.sch{background:#d9efe2}.cal-ev.rich{background:#fbe0da}
/* adattamento telefono */
@media (max-width:900px){
  .adm-corpo{grid-template-columns:1fr}
  .adm-top{display:flex;align-items:center;gap:.6rem;background:var(--asfalto);color:#fff;padding:.4rem .6rem;position:sticky;top:0;z-index:100;min-height:56px}
  .adm-menu-btn{background:none;border:0;color:#fff;width:48px;height:48px;display:grid;place-items:center;border-radius:10px;cursor:pointer}
  .adm-logo span{display:none}.adm-top-titolo{font-family:var(--titoli);font-weight:800;font-size:1.25rem;text-transform:uppercase;margin-left:auto;padding-right:.5rem}
  .adm-nav{position:fixed;inset:0 25% 0 0;z-index:200;height:auto;transform:translateX(-102%);transition:transform .35s var(--ease);width:min(86vw,320px);box-shadow:8px 0 30px rgba(0,0,0,.4)}
  .adm-nav.aperto{transform:none}
  .adm-logo-lato{display:none}
  body.menu-aperto{overflow:hidden}
  body.menu-aperto::after{content:"";position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:150}
  .adm-main{padding-top:1rem}
  .adm-titolo h1{font-size:1.7rem}
}
@media print{.adm-top,.adm-nav,.adm-avviso,.adm-azioni,.btn,.salta{display:none!important}.adm-corpo{display:block}.card{border:0;padding:0}body.adm{background:#fff}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
