/* Stile "lucido" delle app di Pietro (come CV PAN, FindFarma, Celo, Monti FVG), palette indaco per gli strumenti QR. */
html { background-color: #1b2a5c; }
body { background: transparent !important; color: #0f1b3d; font-family: ui-rounded, "SF Pro Rounded", -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, sans-serif; }
body::before { content: ""; position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; background: linear-gradient(135deg, #1b2a5c 0%, #3f5fd0 50%, #1b2a5c 100%); }
.container { background: linear-gradient(180deg, #ffffff 0%, #eef2fb 100%) !important; border: 1px solid rgba(255, 255, 255, .9); border-radius: 26px !important;
  box-shadow: 0 18px 44px rgba(8, 18, 60, .38), inset 0 1px 0 #fff !important; }
h2 { color: #1b2a5c !important; text-transform: uppercase; letter-spacing: .08em; font-size: 1.15em !important; font-weight: 900; border-bottom: 2px solid #3f5fd0 !important; }
h3 { color: #5a6aa0 !important; text-transform: uppercase; letter-spacing: .07em; font-size: .78em !important; font-weight: 800; }
label { color: #1b2a5c !important; }
a.voce { background: linear-gradient(180deg, #ffffff, #f1f4fc) !important; border: 1px solid #d7def3 !important; border-radius: 18px !important; box-shadow: 0 3px 8px rgba(8, 18, 60, .10); }
a.voce:hover { background: linear-gradient(180deg, #ffffff, #e6ecfb) !important; }
a.voce .titolo { color: #1b2a5c; }
input[type="text"], select, input[type="file"] { background: linear-gradient(180deg, #fff, #f3f6fd); border: 1px solid #cfd8f1 !important; border-radius: 14px !important; }
.radio-group { background: linear-gradient(180deg, #fff, #f1f4fc) !important; border: 1px solid #d7def3 !important; border-radius: 14px !important; }
.btn { background: linear-gradient(180deg, #7d98f3 0%, #3f5fd0 55%, #2f49a8 100%) !important; border-radius: 16px !important; font-weight: 800 !important;
  box-shadow: 0 8px 18px rgba(47, 73, 168, .34), inset 0 1px 0 rgba(255, 255, 255, .35); }
.btn:hover { filter: brightness(1.06); }
.btn-download { background: linear-gradient(180deg, #4cc98a 0%, #1f9d62 55%, #167a4c 100%) !important; box-shadow: 0 8px 18px rgba(22, 122, 76, .34), inset 0 1px 0 rgba(255, 255, 255, .35); }
#canvas-container { border: 1px solid #d7def3; border-radius: 18px !important; box-shadow: 0 6px 18px rgba(8, 18, 60, .12) !important; }
.export-panel { background: linear-gradient(180deg, #f3f6fd, #e6ecfb) !important; border: 1px solid #cfd8f1 !important; border-radius: 18px !important; }
.export-panel h3 { color: #3f5fd0 !important; }
@media (min-width: 900px) {
  body { padding: 56px 24px !important; }
  body > .container:only-child { max-width: 760px !important; }
  .container > a.voce { display: block; }
}
