/* GesTecnico — restyling grafico v1. Solo CSS, nessuna modifica PHP. */
:root{font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:#1b3045;background:#f3f6fa;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;line-height:1.55}header{background:linear-gradient(110deg,#102d50,#155184);color:#fff;padding:18px max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;box-shadow:0 6px 22px #112d4a20;border-bottom:4px solid #ee8a28}header strong{font-size:1.12rem;letter-spacing:.035em}header nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}header nav a{color:#f4f8ff;text-decoration:none;padding:8px 12px;border-radius:8px;font-weight:600;font-size:.91rem;transition:background .2s}header nav a:hover,header nav a:focus-visible{background:#ffffff24}main{max-width:1180px;margin:32px auto 48px;padding:0 24px}h1{font-size:clamp(1.55rem,2.5vw,2.1rem);line-height:1.25;letter-spacing:-.025em;margin:0 0 22px;color:#12375b}h2{font-size:1.15rem;color:#17456e;margin:0 0 14px}h3{color:#234c70}p{margin:10px 0 16px}section,main>form{background:#fff;border:1px solid #dce6ef;border-radius:14px;padding:24px;margin:18px 0;box-shadow:0 5px 22px #1538580a}section section{box-shadow:none}label{display:block;font-weight:650;margin:14px 0;color:#304b64}input,select,textarea{display:block;width:100%;max-width:650px;padding:12px 13px;border:1px solid #b8c9d7;border-radius:9px;margin-top:7px;background:#fff;color:#18354d;font:inherit;transition:border-color .15s,box-shadow .15s}textarea{min-height:110px}input:focus,select:focus,textarea:focus{outline:none;border-color:#1875b7;box-shadow:0 0 0 3px #1875b71e}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#176da6;color:#fff;border:1px solid transparent;padding:11px 17px;border-radius:9px;cursor:pointer;text-decoration:none;font:600 .94rem/1.3 inherit;box-shadow:0 3px 9px #176da622;transition:background .2s,transform .15s}button:hover,.button:hover{background:#105783;color:#fff;transform:translateY(-1px)}button:focus-visible,.button:focus-visible,a:focus-visible{outline:3px solid #ee8a28;outline-offset:2px}.inline{display:inline}.inline button{padding:8px 12px;background:#ffffff1c;border:1px solid #ffffff55;box-shadow:none}.inline button:hover{background:#ffffff30}table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid #dce6ef;border-radius:12px;overflow:hidden;box-shadow:0 5px 22px #1538580a}th,td{padding:14px 15px;border-bottom:1px solid #e8eef3;text-align:left;vertical-align:top}th{background:#eaf1f8;color:#23435f;font-size:.84rem;text-transform:uppercase;letter-spacing:.04em}tr:last-child td{border-bottom:0}tbody tr:hover{background:#f7faff}a{color:#12649b;text-underline-offset:3px}a:hover{color:#0b456f}footer{max-width:1180px;margin:35px auto 0;padding:25px 24px 35px;text-align:center;color:#708396;font-size:.8rem;border-top:1px solid #dce6ef}.error{color:#ad2b24;background:#fff2f0;padding:12px 15px;border-left:4px solid #c43e32;border-radius:7px}hr{border:0;border-top:1px solid #e4ebf1;margin:22px 0}@media(max-width:760px){header{padding:16px 20px}header nav{width:100%;gap:3px}header nav a{padding:7px 9px}main{margin:22px auto;padding:0 15px}section,main>form{padding:17px}table{display:block;overflow-x:auto;white-space:nowrap}td,th{padding:10px;font-size:.83rem}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* GesTecnico v2: dashboard e catalogo servizi */
.lead{font-size:1.04rem;color:#526b83;margin-bottom:22px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.service-card{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;min-height:188px;padding:22px 14px;border-radius:18px;text-decoration:none;border:1px solid #dce6ef;box-shadow:0 8px 25px #14395d12;transition:transform .15s,box-shadow .15s}.service-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #14395d24}.service-card strong{font-size:1.06rem;line-height:1.35}.service-icon{display:grid;place-items:center;width:60px;height:60px;border-radius:15px;font-size:2rem;color:white;background:var(--accent)}.service-more{font-size:.79rem;font-weight:700;color:var(--accent)}.service-blu{--accent:#1769aa;background:#e9f3fc}.service-verde{--accent:#0b8a80;background:#e5f7f4}.service-viola{--accent:#7953b5;background:#f1ebfa}.service-ambra{--accent:#b97917;background:#fff4e1}.service-corallo{--accent:#c15e33;background:#fff0e7}.service-smeraldo{--accent:#32834a;background:#e9f6ed}.service-giallo{--accent:#a8780d;background:#fff7dc}.service-celeste{--accent:#315b9d;background:#eaf0fc}.catasto-panel{background:#eaf0fc;border:1px solid #cfdbef;border-radius:20px;padding:24px}.catasto-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.catasto-card{min-height:128px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:white;border:1px solid #cfdcf2;border-radius:14px;padding:18px;text-align:center;text-decoration:none;color:#234b82;transition:transform .15s,box-shadow .15s}.catasto-card strong{font-size:1.1rem;font-weight:750;line-height:1.35}.catasto-icon{font-size:1.7rem;color:#315b9d}.catasto-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #315b9d22}.dashboard-welcome{display:flex;justify-content:space-between;align-items:center;gap:20px;background:#eaf2fb;border-radius:16px;padding:24px;margin-bottom:20px}.dashboard-welcome h2{font-size:1.45rem;margin:0}.dashboard-welcome p{margin:4px 0}.eyebrow{font-size:.72rem;letter-spacing:.1em;font-weight:800;color:#e08327}.btn-orange{background:#e68426!important;color:#fff!important}.btn-orange:hover{background:#c96d18!important}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:22px 0}.kpi{background:white;border:1px solid #dce6ef;border-radius:14px;padding:18px;box-shadow:0 5px 18px #1538580a}.kpi span{display:block;color:#617b92;font-size:.85rem}.kpi strong{display:block;font-size:2rem;color:#143e66}.dashboard-links{margin:24px 0}.request-form{max-width:850px}.form-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}@media(max-width:900px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.service-grid,.catasto-grid{grid-template-columns:1fr}.dashboard-welcome{flex-direction:column;align-items:flex-start}.catasto-panel{padding:14px}} 
/* GesTecnico V3 - Correzione griglie smartphone */
@media screen and (max-width: 520px) {
  .service-grid,
  .catasto-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .service-card {
    min-height: 145px;
    padding: 14px 8px;
    gap: 8px;
  }

  .service-card strong {
    font-size: 0.88rem;
    line-height: 1.3;
  }

  .service-icon {
    width: 46px;
    height: 46px;
    font-size: 1.5rem;
  }

  .service-more {
    font-size: 0.72rem;
  }

  .catasto-card {
    min-height: 115px;
    padding: 12px 7px;
    gap: 8px;
  }

  .catasto-card strong {
    font-size: 0.85rem;
    overflow-wrap: anywhere;
  }
}
/* GesTecnico V4 — schede pratiche responsive; solo tabella dashboard. */
@media screen and (max-width: 600px) {
  table.pratiche-table {
    display: block;
    overflow: visible;
    white-space: normal;
    border: 0;
    background: transparent;
    box-shadow: none;
  }
  .pratiche-table thead { display: none; }
  .pratiche-table tbody { display: grid; gap: 12px; }
  .pratiche-table tbody tr {
    display: block;
    background: #fff;
    border: 1px solid #dce6ef;
    border-radius: 12px;
    padding: 10px 13px;
    box-shadow: 0 4px 14px #1538580a;
  }
  .pratiche-table tbody td {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    padding: 8px 0;
    border-bottom: 1px solid #e8eef3;
    white-space: normal;
    overflow-wrap: anywhere;
    text-align: right;
    font-size: .86rem;
  }
  .pratiche-table tbody td:last-child { border-bottom: 0; }
  .pratiche-table tbody td::before {
    content: attr(data-label);
    flex: 0 0 auto;
    color: #617b92;
    font-weight: 650;
    text-align: left;
  }
  .pratiche-table tbody td:first-child a { font-weight: 700; }
}

/* GesTecnico V5 - Moduli responsive */
@media (min-width: 800px) {
  main > form.request-form {
    max-width: 1120px;
  }

  .request-form .request-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 22px;
    align-items: start;
  }

  .request-form .request-fields > label {
    min-width: 0;
  }

  .request-form .request-fields input,
  .request-form .request-fields select,
  .request-form .request-fields textarea {
    max-width: none;
  }

  .request-form .request-fields textarea {
    min-height: 100px;
  }
}

@media (max-width: 799px) {
  .request-form .request-fields {
    display: block;
  }

  .request-form .request-fields input,
  .request-form .request-fields select,
  .request-form .request-fields textarea {
    max-width: 100%;
  }
}


