/* PDU Water Manager - frontend modern responsive UI */
.pduwm-portal{
  --pdu-bg:#f4f8fb;
  --pdu-card:#ffffff;
  --pdu-text:#0f172a;
  --pdu-muted:#64748b;
  --pdu-line:#e2e8f0;
  --pdu-primary:#0ea5e9;
  --pdu-primary-dark:#0369a1;
  --pdu-green:#16a34a;
  --pdu-amber:#d97706;
  --pdu-red:#dc2626;
  --pdu-shadow:0 18px 45px rgba(15,23,42,.08);
  --pdu-radius:22px;
  max-width:1180px;
  margin:0 auto;
  padding:clamp(14px,2vw,28px);
  color:var(--pdu-text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
.pduwm-portal *{box-sizing:border-box}
.pduwm-portal a{color:var(--pdu-primary-dark);text-decoration:none;font-weight:650}
.pduwm-portal a:hover{text-decoration:underline}
.pduwm-hero{
  position:relative;
  overflow:hidden;
  border-radius:28px;
  padding:clamp(22px,4vw,42px);
  margin:0 0 22px;
  color:#fff;
  background:radial-gradient(circle at top right,rgba(255,255,255,.32),transparent 32%),linear-gradient(135deg,#075985,#0ea5e9 58%,#22c55e);
  box-shadow:0 24px 60px rgba(14,165,233,.28);
}
.pduwm-hero:after{content:"";position:absolute;right:-80px;bottom:-120px;width:280px;height:280px;border-radius:999px;background:rgba(255,255,255,.18)}
.pduwm-hero-content{position:relative;z-index:1;max-width:760px}
.pduwm-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.18);font-size:13px;font-weight:750;letter-spacing:.02em;text-transform:uppercase;margin-bottom:12px}
.pduwm-hero h2{margin:0 0 8px;color:#fff;font-size:clamp(28px,5vw,44px);line-height:1.05;letter-spacing:-.04em}
.pduwm-hero p{margin:0;color:rgba(255,255,255,.9);font-size:clamp(15px,2vw,17px)}
.pduwm-hero-stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px;max-width:760px}
.pduwm-mini-stat{padding:14px;border:1px solid rgba(255,255,255,.28);border-radius:18px;background:rgba(255,255,255,.16);backdrop-filter:blur(8px)}
.pduwm-mini-stat span{display:block;color:rgba(255,255,255,.82);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.pduwm-mini-stat strong{display:block;margin-top:4px;color:#fff;font-size:22px;letter-spacing:-.03em}
.pduwm-front-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:18px;align-items:start}
.pduwm-box,.pduwm-consent,.pduwm-login-card{
  position:relative;
  overflow:hidden;
  background:var(--pdu-card);
  border:1px solid rgba(226,232,240,.9);
  border-radius:var(--pdu-radius);
  padding:clamp(18px,2.4vw,26px);
  margin:18px 0;
  box-shadow:var(--pdu-shadow);
}
.pduwm-box h3,.pduwm-consent h3{display:flex;align-items:center;gap:10px;margin:0 0 16px;font-size:20px;letter-spacing:-.02em;color:var(--pdu-text)}
.pduwm-box h3:before,.pduwm-consent h3:before{content:"";display:inline-block;width:10px;height:28px;border-radius:999px;background:linear-gradient(180deg,var(--pdu-primary),#22c55e)}
.pduwm-portal form p{margin:0 0 14px}
.pduwm-portal label{display:block;color:#334155;font-weight:700;font-size:14px}
.pduwm-portal input[type="text"],.pduwm-portal input[type="email"],.pduwm-portal input[type="number"],.pduwm-portal input[type="file"],.pduwm-portal select,.pduwm-portal textarea{
  width:100%;
  max-width:100%;
  margin-top:7px;
  border:1px solid var(--pdu-line);
  border-radius:14px;
  min-height:46px;
  padding:11px 13px;
  background:#f8fafc;
  color:var(--pdu-text);
  outline:none;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;
}
.pduwm-portal input:focus,.pduwm-portal select:focus,.pduwm-portal textarea:focus{border-color:var(--pdu-primary);box-shadow:0 0 0 4px rgba(14,165,233,.14);background:#fff}
.pduwm-portal input[type="file"]{padding:9px;background:#fff}
.pduwm-portal .button,.pduwm-portal button.button,.pduwm-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:46px;
  padding:11px 17px;
  border-radius:999px;
  border:0;
  background:linear-gradient(135deg,var(--pdu-primary-dark),var(--pdu-primary));
  color:#fff!important;
  font-weight:800;
  line-height:1;
  text-decoration:none!important;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(14,165,233,.24);
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.pduwm-portal .button:hover,.pduwm-portal button.button:hover,.pduwm-button:hover{transform:translateY(-1px);box-shadow:0 14px 26px rgba(14,165,233,.3);filter:saturate(1.05)}
.pduwm-ok,.pduwm-alert{
  display:flex;
  align-items:flex-start;
  gap:10px;
  background:#ecfdf5;
  border:1px solid #bbf7d0;
  color:#166534;
  padding:14px 16px;
  border-radius:16px;
  margin:0 0 16px;
  font-weight:650;
}
.pduwm-ok:before{content:"✓";display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:999px;background:#22c55e;color:#fff;font-weight:900}
.pduwm-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:16px;border:1px solid var(--pdu-line)}
.pduwm-box table,.pduwm-dist{width:100%;border-collapse:separate;border-spacing:0;min-width:640px;background:#fff}
.pduwm-box th,.pduwm-box td,.pduwm-dist th,.pduwm-dist td{padding:12px 13px;border-bottom:1px solid var(--pdu-line);text-align:left;vertical-align:top}
.pduwm-box th,.pduwm-dist th{background:#f8fafc;color:#475569;font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:850}
.pduwm-box tr:last-child td,.pduwm-dist tr:last-child td{border-bottom:0}
.pduwm-me{background:#ecfdf5!important}
.pduwm-dist-summary{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding:14px 16px;border:1px solid #bae6fd;border-left:5px solid var(--pdu-primary);background:#f0f9ff;border-radius:16px;margin:12px 0;color:#0c4a6e}
.pduwm-receipt-card{border:1px solid var(--pdu-line);border-radius:20px;padding:16px;margin:12px 0;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 10px 24px rgba(15,23,42,.05)}
.pduwm-receipt-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:14px}
.pduwm-receipt-card strong{display:block;color:var(--pdu-text);font-size:18px;letter-spacing:-.02em}
.pduwm-receipt-card .pduwm-amount{display:block;margin-top:4px;font-size:24px;font-weight:900;letter-spacing:-.04em;color:#075985}
.pduwm-receipt-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:12px}
.pduwm-receipt-actions form{margin:0}
.pduwm-receipt-card details{margin-top:12px;border:1px dashed #cbd5e1;border-radius:16px;padding:12px;background:#fff}
.pduwm-receipt-card summary{cursor:pointer;font-weight:800;color:#0f172a}
.pduwm-receipt-card pre{white-space:pre-wrap;background:#0f172a;color:#e2e8f0;padding:14px;border-radius:14px;overflow:auto;font-size:13px;line-height:1.5}
.pduwm-status{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850;letter-spacing:.02em;white-space:nowrap}
.pduwm-status:before{content:"";width:8px;height:8px;border-radius:999px;background:currentColor}
.pduwm-status-paid,.pduwm-status-verified,.pduwm-status-published{background:#dcfce7;color:#15803d}
.pduwm-status-unpaid,.pduwm-status-draft,.pduwm-status-pending{background:#fef3c7;color:#b45309}
.pduwm-status-rejected,.pduwm-status-failed{background:#fee2e2;color:#b91c1c}
.pduwm-status-default{background:#e2e8f0;color:#334155}
.pduwm-consent{max-width:760px;margin:22px auto}.pduwm-consent p{font-size:15px;line-height:1.65;color:#334155}.pduwm-consent input[type="checkbox"]{width:18px;height:18px;vertical-align:middle;margin-right:8px}.pduwm-login-card{text-align:center;max-width:560px;margin:36px auto}.pduwm-login-card p{color:var(--pdu-muted)}
@media (max-width:900px){.pduwm-front-grid{grid-template-columns:1fr}.pduwm-hero-stats{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:640px){.pduwm-portal{padding:10px}.pduwm-hero{border-radius:22px;padding:24px 20px}.pduwm-hero-stats{grid-template-columns:1fr}.pduwm-mini-stat{padding:12px}.pduwm-box,.pduwm-consent,.pduwm-login-card{border-radius:18px;padding:18px;margin:14px 0}.pduwm-receipt-head{display:block}.pduwm-receipt-card .pduwm-status{margin-top:10px}.pduwm-receipt-actions{display:grid;grid-template-columns:1fr}.pduwm-receipt-actions .button,.pduwm-receipt-actions form,.pduwm-receipt-actions button{width:100%}.pduwm-portal .button,.pduwm-portal button.button{width:100%;min-height:50px}.pduwm-box h3,.pduwm-consent h3{font-size:18px}.pduwm-table-scroll{margin-left:-4px;margin-right:-4px}.pduwm-box table,.pduwm-dist{min-width:580px}.pduwm-dist-summary{display:block}.pduwm-dist-summary strong{display:inline-block;margin:.2rem 0}}
@media print{.pduwm-portal .button,.pduwm-hero,.pduwm-receipt-actions,details{display:none!important}.pduwm-box,.pduwm-receipt-card{box-shadow:none;border:1px solid #ddd}}

/* v0.2.4 */
.pduwm-pdf-link{margin:12px 0 14px}
.pduwm-submit-reading{margin-top:4px}

/* v0.2.5: pulsante invio lettura sempre visibile anche con temi aggressivi */
.pduwm-portal button.pduwm-submit-reading,
.pduwm-portal .pduwm-submit-reading,
.pduwm-box form button.pduwm-submit-reading[type="submit"]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:132px !important;
  min-height:46px !important;
  margin-top:10px !important;
  padding:11px 18px !important;
  border:0 !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#0369a1,#0ea5e9) !important;
  color:#ffffff !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-indent:0 !important;
  opacity:1 !important;
  box-shadow:0 14px 30px rgba(14,165,233,.30) !important;
  cursor:pointer !important;
  appearance:none !important;
  -webkit-appearance:none !important;
}
.pduwm-portal button.pduwm-submit-reading:hover,
.pduwm-box form button.pduwm-submit-reading[type="submit"]:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 34px rgba(14,165,233,.34) !important;
  filter:saturate(1.08);
}
.pduwm-portal button.pduwm-submit-reading:after{content:" →";font-weight:900}
@media (max-width:640px){
  .pduwm-portal button.pduwm-submit-reading,
  .pduwm-portal .pduwm-submit-reading,
  .pduwm-box form button.pduwm-submit-reading[type="submit"]{width:auto !important;min-width:132px !important;max-width:100% !important}
}

/* v0.2.6: upload foto contatore obbligatorio e campo file moderno */
.pduwm-required{
  display:inline-flex;
  align-items:center;
  margin-left:6px;
  padding:3px 8px;
  border-radius:999px;
  background:#e0f2fe;
  color:#0369a1;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
  vertical-align:middle;
}
.pduwm-file-field small{
  display:block;
  margin-top:8px;
  color:#64748b;
  font-size:13px;
  line-height:1.4;
}
.pduwm-portal .pduwm-file-field input[type="file"]{
  cursor:pointer;
  min-height:58px;
  padding:10px;
  border:1px dashed #bae6fd;
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff,#f0f9ff);
  color:#0f172a;
  font-weight:700;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.pduwm-portal .pduwm-file-field input[type="file"]::file-selector-button{
  margin-right:12px;
  border:0;
  border-radius:999px;
  padding:11px 16px;
  background:linear-gradient(135deg,#0369a1,#0ea5e9);
  color:#fff;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(14,165,233,.24);
}
.pduwm-portal .pduwm-file-field input[type="file"]::-webkit-file-upload-button{
  margin-right:12px;
  border:0;
  border-radius:999px;
  padding:11px 16px;
  background:linear-gradient(135deg,#0369a1,#0ea5e9);
  color:#fff;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(14,165,233,.24);
}

/* v0.2.8: template cromatico "Parco degli Ulivi" selezionabile da Impostazioni */
.pduwm-portal.pduwm-theme-ulivi{
  --pdu-bg:#f7f4ed;
  --pdu-card:#fffdf8;
  --pdu-text:#22301f;
  --pdu-muted:#6d755f;
  --pdu-line:#e7dfd1;
  --pdu-primary:#a9553d;
  --pdu-primary-dark:#6b4f2f;
  --pdu-green:#5f7442;
  --pdu-amber:#b77a32;
  --pdu-red:#b04437;
  --pdu-shadow:0 22px 58px rgba(67,78,47,.13);
  background:
    radial-gradient(circle at 92% 0%,rgba(169,85,61,.11),transparent 34%),
    radial-gradient(circle at 0% 18%,rgba(95,116,66,.13),transparent 32%),
    linear-gradient(180deg,#fbfaf6,var(--pdu-bg));
  border-radius:30px;
}
.pduwm-theme-ulivi .pduwm-hero{
  background:
    radial-gradient(circle at 85% 10%,rgba(255,255,255,.26),transparent 34%),
    linear-gradient(135deg,#4b5b36 0%,#7d8865 52%,#a9553d 100%);
  box-shadow:0 26px 70px rgba(75,91,54,.25);
}
.pduwm-theme-ulivi .pduwm-hero:after{
  background:rgba(255,255,255,.16);
}
.pduwm-theme-ulivi .pduwm-eyebrow{
  background:rgba(255,255,255,.20);
  color:#fff;
}
.pduwm-theme-ulivi .pduwm-box,
.pduwm-theme-ulivi .pduwm-consent,
.pduwm-theme-ulivi .pduwm-login-card,
.pduwm-theme-ulivi .pduwm-receipt-card{
  border-color:rgba(231,223,209,.92);
  background:linear-gradient(180deg,#fffdf8,#fbf8f0);
}
.pduwm-theme-ulivi .pduwm-box h3,
.pduwm-theme-ulivi .pduwm-consent h3{
  color:#1f2a1d;
}
.pduwm-theme-ulivi .pduwm-box h3:before,
.pduwm-theme-ulivi .pduwm-consent h3:before{
  background:linear-gradient(180deg,#8ca274,#a9553d);
}
.pduwm-theme-ulivi a{
  color:#8e4936;
}
.pduwm-theme-ulivi label{
  color:#2d3a28;
}
.pduwm-theme-ulivi input[type="text"],
.pduwm-theme-ulivi input[type="email"],
.pduwm-theme-ulivi input[type="number"],
.pduwm-theme-ulivi input[type="file"],
.pduwm-theme-ulivi select,
.pduwm-theme-ulivi textarea{
  border-color:#e7dfd1;
  background:#fffdf8;
}
.pduwm-theme-ulivi input:focus,
.pduwm-theme-ulivi select:focus,
.pduwm-theme-ulivi textarea:focus{
  border-color:#a9553d;
  box-shadow:0 0 0 4px rgba(169,85,61,.14);
}
.pduwm-theme-ulivi .button,
.pduwm-theme-ulivi button.button,
.pduwm-theme-ulivi .pduwm-button{
  background:linear-gradient(135deg,#6b4f2f,#a9553d) !important;
  box-shadow:0 12px 26px rgba(169,85,61,.24) !important;
}
.pduwm-theme-ulivi .button:hover,
.pduwm-theme-ulivi button.button:hover,
.pduwm-theme-ulivi .pduwm-button:hover{
  box-shadow:0 16px 30px rgba(169,85,61,.30) !important;
}
.pduwm-theme-ulivi button.pduwm-submit-reading,
.pduwm-theme-ulivi .pduwm-submit-reading,
.pduwm-theme-ulivi .pduwm-box form button.pduwm-submit-reading[type="submit"]{
  background:linear-gradient(135deg,#5f7442,#a9553d) !important;
  box-shadow:0 14px 30px rgba(95,116,66,.28) !important;
}
.pduwm-theme-ulivi .pduwm-file-field input[type="file"]{
  border-color:#d8c8ae;
  background:linear-gradient(180deg,#fffdf8,#f5efe2);
}
.pduwm-theme-ulivi .pduwm-file-field input[type="file"]::file-selector-button{
  background:linear-gradient(135deg,#5f7442,#a9553d);
  box-shadow:0 8px 18px rgba(95,116,66,.24);
}
.pduwm-theme-ulivi .pduwm-file-field input[type="file"]::-webkit-file-upload-button{
  background:linear-gradient(135deg,#5f7442,#a9553d);
  box-shadow:0 8px 18px rgba(95,116,66,.24);
}
.pduwm-theme-ulivi .pduwm-required{
  background:#f5e7dc;
  color:#8e4936;
}
.pduwm-theme-ulivi .pduwm-table-scroll{
  border-color:#e7dfd1;
}
.pduwm-theme-ulivi .pduwm-box th,
.pduwm-theme-ulivi .pduwm-dist th{
  background:#f3eee3;
  color:#6d755f;
}
.pduwm-theme-ulivi .pduwm-box td,
.pduwm-theme-ulivi .pduwm-dist td{
  border-bottom-color:#e7dfd1;
}
.pduwm-theme-ulivi .pduwm-dist-summary{
  border-color:#d8c8ae;
  border-left-color:#a9553d;
  background:#fbf4ee;
  color:#4b5b36;
}
.pduwm-theme-ulivi .pduwm-receipt-card .pduwm-amount{
  color:#a9553d;
}
.pduwm-theme-ulivi .pduwm-receipt-card details{
  border-color:#d8c8ae;
  background:#fffdf8;
}
.pduwm-theme-ulivi .pduwm-receipt-card summary{
  color:#22301f;
}
.pduwm-theme-ulivi .pduwm-receipt-card pre{
  background:#2f3a29;
  color:#f8fafc;
}
.pduwm-theme-ulivi .pduwm-status-paid,
.pduwm-theme-ulivi .pduwm-status-verified,
.pduwm-theme-ulivi .pduwm-status-published{
  background:#eaf2df;
  color:#5f7442;
}
.pduwm-theme-ulivi .pduwm-status-unpaid,
.pduwm-theme-ulivi .pduwm-status-draft,
.pduwm-theme-ulivi .pduwm-status-pending{
  background:#f7eadf;
  color:#9a4e39;
}
.pduwm-theme-ulivi .pduwm-ok{
  background:#eaf2df;
  border-color:#cad8b9;
  color:#4b5b36;
}
.pduwm-theme-ulivi .pduwm-ok:before{
  background:#5f7442;
}
@media (max-width:640px){
  .pduwm-portal.pduwm-theme-ulivi{border-radius:22px;}
}


/* v0.2.9: template "Parco degli Ulivi sobrio" - palette salvia/oliva e rosso mattone con pulsanti più uniformi */
.pduwm-portal.pduwm-theme-ulivi-sobrio{
  --pdu-bg:#f5f1e8;
  --pdu-card:#fffdf7;
  --pdu-text:#24311f;
  --pdu-muted:#697258;
  --pdu-line:#e2d8c7;
  --pdu-primary:#934b36;
  --pdu-primary-dark:#7f3f2e;
  --pdu-green:#667443;
  --pdu-amber:#8a6f3e;
  --pdu-red:#934b36;
  --pdu-shadow:0 20px 48px rgba(61,70,43,.12);
  background:linear-gradient(180deg,#fbfaf5,#f5f1e8);
  border-radius:30px;
}
.pduwm-theme-ulivi-sobrio .pduwm-hero{
  background:linear-gradient(135deg,#59663e 0%,#7f8b68 100%);
  box-shadow:0 22px 58px rgba(61,70,43,.22);
}
.pduwm-theme-ulivi-sobrio .pduwm-hero:after{
  background:rgba(255,255,255,.12);
}
.pduwm-theme-ulivi-sobrio .pduwm-eyebrow{
  background:rgba(255,255,255,.18);
  color:#fff;
}
.pduwm-theme-ulivi-sobrio .pduwm-box,
.pduwm-theme-ulivi-sobrio .pduwm-consent,
.pduwm-theme-ulivi-sobrio .pduwm-login-card,
.pduwm-theme-ulivi-sobrio .pduwm-receipt-card{
  border-color:#e2d8c7;
  background:#fffdf7;
  box-shadow:0 20px 48px rgba(61,70,43,.10);
}
.pduwm-theme-ulivi-sobrio .pduwm-box h3,
.pduwm-theme-ulivi-sobrio .pduwm-consent h3{
  color:#1f2a1d;
}
.pduwm-theme-ulivi-sobrio .pduwm-box h3:before,
.pduwm-theme-ulivi-sobrio .pduwm-consent h3:before{
  background:#667443;
}
.pduwm-theme-ulivi-sobrio a{
  color:#934b36;
}
.pduwm-theme-ulivi-sobrio label{
  color:#293622;
}
.pduwm-theme-ulivi-sobrio input[type="text"],
.pduwm-theme-ulivi-sobrio input[type="email"],
.pduwm-theme-ulivi-sobrio input[type="number"],
.pduwm-theme-ulivi-sobrio input[type="file"],
.pduwm-theme-ulivi-sobrio select,
.pduwm-theme-ulivi-sobrio textarea{
  border-color:#e2d8c7;
  background:#fffdf7;
}
.pduwm-theme-ulivi-sobrio input:focus,
.pduwm-theme-ulivi-sobrio select:focus,
.pduwm-theme-ulivi-sobrio textarea:focus{
  border-color:#934b36;
  box-shadow:0 0 0 4px rgba(147,75,54,.13);
}
.pduwm-theme-ulivi-sobrio .button,
.pduwm-theme-ulivi-sobrio button.button,
.pduwm-theme-ulivi-sobrio .pduwm-button{
  background:#934b36 !important;
  box-shadow:0 10px 22px rgba(147,75,54,.20) !important;
}
.pduwm-theme-ulivi-sobrio .button:hover,
.pduwm-theme-ulivi-sobrio button.button:hover,
.pduwm-theme-ulivi-sobrio .pduwm-button:hover{
  background:#7f3f2e !important;
  box-shadow:0 13px 26px rgba(147,75,54,.24) !important;
}
.pduwm-theme-ulivi-sobrio button.pduwm-submit-reading,
.pduwm-theme-ulivi-sobrio .pduwm-submit-reading,
.pduwm-theme-ulivi-sobrio .pduwm-box form button.pduwm-submit-reading[type="submit"]{
  background:#934b36 !important;
  box-shadow:0 10px 22px rgba(147,75,54,.20) !important;
  min-width:132px !important;
  min-height:46px !important;
  padding:11px 18px !important;
}
.pduwm-theme-ulivi-sobrio .pduwm-file-field input[type="file"]{
  border-color:#d7c7ad;
  background:#fffaf0;
}
.pduwm-theme-ulivi-sobrio .pduwm-file-field input[type="file"]::file-selector-button{
  background:#667443;
  box-shadow:0 7px 16px rgba(102,116,67,.20);
}
.pduwm-theme-ulivi-sobrio .pduwm-file-field input[type="file"]::-webkit-file-upload-button{
  background:#667443;
  box-shadow:0 7px 16px rgba(102,116,67,.20);
}
.pduwm-theme-ulivi-sobrio .pduwm-required{
  background:#efe4d8;
  color:#934b36;
}
.pduwm-theme-ulivi-sobrio .pduwm-table-scroll{
  border-color:#e2d8c7;
}
.pduwm-theme-ulivi-sobrio .pduwm-box th,
.pduwm-theme-ulivi-sobrio .pduwm-dist th{
  background:#eee7dc;
  color:#697258;
}
.pduwm-theme-ulivi-sobrio .pduwm-box td,
.pduwm-theme-ulivi-sobrio .pduwm-dist td{
  border-bottom-color:#e2d8c7;
}
.pduwm-theme-ulivi-sobrio .pduwm-dist-summary{
  border-color:#d7c7ad;
  border-left-color:#934b36;
  background:#fbf4ea;
  color:#59663e;
}
.pduwm-theme-ulivi-sobrio .pduwm-receipt-card .pduwm-amount{
  color:#934b36;
}
.pduwm-theme-ulivi-sobrio .pduwm-receipt-card details{
  border-color:#d7c7ad;
  background:#fffdf7;
}
.pduwm-theme-ulivi-sobrio .pduwm-receipt-card summary{
  color:#24311f;
}
.pduwm-theme-ulivi-sobrio .pduwm-receipt-card pre{
  background:#2f3828;
  color:#f8fafc;
}
.pduwm-theme-ulivi-sobrio .pduwm-status-paid,
.pduwm-theme-ulivi-sobrio .pduwm-status-verified,
.pduwm-theme-ulivi-sobrio .pduwm-status-published{
  background:#e9efdf;
  color:#59663e;
}
.pduwm-theme-ulivi-sobrio .pduwm-status-unpaid,
.pduwm-theme-ulivi-sobrio .pduwm-status-draft,
.pduwm-theme-ulivi-sobrio .pduwm-status-pending{
  background:#f2e4db;
  color:#934b36;
}
.pduwm-theme-ulivi-sobrio .pduwm-ok{
  background:#e9efdf;
  border-color:#cbd7bb;
  color:#59663e;
}
@media (max-width:640px){
  .pduwm-portal.pduwm-theme-ulivi-sobrio{border-radius:22px;}
}

/* v0.3.2: riparto a fasce */
.pduwm-band-summary{margin:10px 0 14px;padding:12px 14px;border:1px solid rgba(142,92,56,.25);border-radius:14px;background:rgba(255,248,239,.72);color:var(--pduwm-text,#152238);line-height:1.55;}
.pduwm-warning-text{display:block;color:#a13d22;font-weight:800;margin-top:4px;}

/* v0.3.4: pulsanti lettura più squadrati, coerenti con Dettaglio */
.pduwm-portal button.pduwm-submit-reading,
.pduwm-portal .pduwm-submit-reading,
.pduwm-box form button.pduwm-submit-reading[type="submit"]{
  border-radius:10px !important;
}
.pduwm-portal button.pduwm-submit-reading:after{content:"" !important;}
.pduwm-portal .pduwm-file-field input[type="file"]{
  border-radius:10px !important;
}
.pduwm-portal .pduwm-file-field input[type="file"]::file-selector-button,
.pduwm-portal .pduwm-file-field input[type="file"]::-webkit-file-upload-button{
  border-radius:10px !important;
}
.pduwm-theme-ulivi .pduwm-file-field input[type="file"]::file-selector-button,
.pduwm-theme-ulivi .pduwm-file-field input[type="file"]::-webkit-file-upload-button,
.pduwm-theme-ulivi-sobrio .pduwm-file-field input[type="file"]::file-selector-button,
.pduwm-theme-ulivi-sobrio .pduwm-file-field input[type="file"]::-webkit-file-upload-button{
  border-radius:10px !important;
}

/* Dettaglio fasce: colonne m³ ed € differenziate in modo leggero */
.pduwm-band-print .pduwm-band-mc-col,
.pduwm-band-detail-front .pduwm-band-mc-col{
  background: rgba(118, 141, 85, .12) !important;
}
.pduwm-band-print .pduwm-band-euro-col,
.pduwm-band-detail-front .pduwm-band-euro-col{
  background: rgba(164, 78, 50, .10) !important;
}
.pduwm-band-detail-front{
  margin-top:18px;
  padding:16px;
  border:1px solid rgba(142,92,56,.18);
  border-radius:16px;
  background:rgba(255,252,246,.68);
}
.pduwm-band-detail-front > strong{
  display:block;
  margin-bottom:10px;
  color:var(--pduwm-text,#152238);
}

.pduwm-dist-communications{
  margin:14px 0 16px;
  padding:14px 16px;
  border:1px solid rgba(151, 83, 55, .20);
  border-left:4px solid #934b36;
  border-radius:14px;
  background:rgba(251, 244, 234, .88);
  color:#24311f;
  line-height:1.55;
}
.pduwm-dist-communications strong{color:#59663e;}
