/* Hugin Analytics: branding demo (nero, bianco, arancione) */
@font-face { font-family: 'Inter'; src: url('/assets/inter-normal-latin-var.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
@font-face { font-family: 'Lora'; src: url('/assets/lora-normal-latin-var.woff2') format('woff2'); font-weight: 400 700; font-display: swap; }
:root { --ink:#1C1C1E; --accent:#C4500E; --accent-dk:#A33F0A; --surface:#F2F1EF; --border:#E4E2DF; }
body { font-family: 'Inter', system-ui, sans-serif; background:#FAFAF8; color:var(--ink); }
h1,h2,h3,h4,h5 { font-family: 'Lora', Georgia, serif; color: var(--ink); }
.demo-banner { background: var(--accent); color:#fff; text-align:center; font-weight:600; padding:8px 12px; font-size:14px; letter-spacing:.3px; }
.demo-banner a { color:#fff; text-decoration: underline; }
.demo-header { background:#fff; border-bottom:1px solid var(--border); padding:12px 0; }
.demo-brand { display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--ink); }
.demo-brand img { height:34px; }
.demo-brand b { font-family:'Lora',serif; font-size:19px; }
.demo-brand b span { color: var(--accent); }
.demo-cta { background:var(--accent); color:#fff !important; border-radius:6px; padding:7px 16px; font-weight:600; font-size:14px; text-decoration:none; }
.demo-cta:hover { background: var(--accent-dk); }
.nav-tabs .nav-link.active { color: var(--accent) !important; border-bottom: 2px solid var(--accent) !important; font-weight:600; }
.nav-tabs .nav-link { color: var(--ink); }
.kpi-card { background:#fff; border:1px solid var(--border); border-top:3px solid var(--accent); border-radius:8px; height:100%; }
.kpi-card .card-header { background:transparent; border:0; font-weight:600; font-size:14px; color:#3A3A3C; padding-bottom:0; }
.kpi-card .card-body { font-size:15px; }
.kpi-card .card-body div:last-child { font-weight:700; color: var(--ink); }
.demo-note { font-size:13px; color:#6E6E73; }
.demo-footer { border-top:1px solid var(--border); padding:18px 0 28px; margin-top:24px; font-size:13px; color:#6E6E73; }
.demo-footer a { color: var(--accent); }

/* ── Effettivo vs obiettivo ── */
.obj-card .card-body { padding: 12px 14px; }
.obj-valore { font-size: 24px; font-weight: 700; line-height: 1.15; font-variant-numeric: tabular-nums; }
.obj-sotto { font-size: 12.5px; color: #6E6E73; margin-top: 4px; line-height: 1.35; }
.kpi-card .card-body div.obj-sotto { font-weight: 400; color: #6E6E73; font-size: 12.5px; }
/* Componenti Dash 4 nei colori Hugin (slider, radio, input) */
:root { --Dash-Fill-Interactive-Strong: #C4500E; --Dash-Fill-Interactive-Weak: rgba(196,80,14,.12);
        --Dash-Fill-Primary-Active: #A33F0A; --Dash-Fill-Primary-Hover: #A33F0A; --Dash-Text-Primary: #1C1C1E; accent-color: #C4500E; }
#obj-crescita input[type=number] { background: #fff !important; color: #1C1C1E !important; }
