/* AIRTUM Coder – stili front-end per lo shortcode [airtum_app].
   Ricrea gli stili base (bottoni, tabelle, form) che nel front-end non
   esistono, e applica la palette del logo. Tutto sotto .airtum-appwrap. */

.airtum-appwrap {
	--airtum-blu:#002EC9; --airtum-rosso:#E60412; --airtum-verde:#3C8218;
	--airtum-teal:#00B7B0; --airtum-giallo:#FDCB06; --airtum-rosa:#FC919C;
	--airtum-ink:#414141; --airtum-line:#e3e6ee; --airtum-bg:#f4f6fb;
	background:var(--airtum-bg); border:1px solid var(--airtum-line);
	border-radius:14px; overflow:hidden; color:var(--airtum-ink);
	font-size:14px; line-height:1.5; margin:0 0 20px;
}
.airtum-appwrap *, .airtum-appwrap *::before, .airtum-appwrap *::after { box-sizing:border-box; }

/* Barra applicazione */
.airtum-appwrap .airtum-appbar {
	position:relative; background:#fff; border-bottom:1px solid var(--airtum-line);
	display:flex; align-items:center; gap:18px; padding:12px 20px; flex-wrap:wrap;
}
.airtum-appwrap .airtum-appbar::after {
	content:""; position:absolute; left:0; right:0; bottom:-1px; height:4px;
	background:linear-gradient(90deg,
		var(--airtum-blu) 0 16.66%, var(--airtum-rosso) 16.66% 33.33%,
		var(--airtum-verde) 33.33% 50%, var(--airtum-teal) 50% 66.66%,
		var(--airtum-giallo) 66.66% 83.33%, var(--airtum-rosa) 83.33% 100%);
}
.airtum-appwrap .airtum-brand { display:flex; align-items:center; gap:12px; }
.airtum-appwrap .airtum-brand img { width:44px; height:44px; display:block; }
.airtum-appwrap .airtum-brand b { color:var(--airtum-ink); font-size:17px; font-weight:700; display:block; }
.airtum-appwrap .airtum-brand span span { font-size:11px; color:#8a90a2; display:block; }
.airtum-appwrap .airtum-appnav { display:flex; gap:4px; flex:1; flex-wrap:wrap; }
.airtum-appwrap .airtum-appnav a {
	display:inline-flex; align-items:center; gap:6px; text-decoration:none;
	color:#4a5164; font-weight:600; font-size:13.5px; padding:8px 13px; border-radius:8px;
}
.airtum-appwrap .airtum-appnav a:hover { background:#eef1fb; color:var(--airtum-blu); }
.airtum-appwrap .airtum-appnav a.current { background:var(--airtum-blu); color:#fff; }
.airtum-appwrap .airtum-appnav .dashicons { font-size:17px; width:17px; height:17px; }
.airtum-appwrap .airtum-appuser { display:flex; align-items:center; gap:12px; margin-left:auto; }
.airtum-appwrap .airtum-appuser .airtum-who { font-size:13px; color:var(--airtum-ink); font-weight:600; }
.airtum-appwrap .airtum-logout {
	display:inline-flex; align-items:center; gap:6px; text-decoration:none;
	border:1px solid #d7dbe7; color:#4a5164; padding:6px 12px; border-radius:8px; font-weight:600; font-size:13px;
}
.airtum-appwrap .airtum-logout:hover { border-color:var(--airtum-rosso); color:var(--airtum-rosso); }

/* Corpo */
.airtum-appwrap .airtum-appbody { padding:22px 24px 30px; }
.airtum-appwrap h1 { font-size:22px; font-weight:700; color:var(--airtum-ink); margin:6px 0 4px; display:flex; align-items:center; gap:8px; }
.airtum-appwrap h2 { font-size:17px; color:var(--airtum-ink); margin:0 0 10px; }
.airtum-appwrap .description { color:#6b7280; font-size:13px; }
.airtum-appwrap a { color:var(--airtum-blu); }

/* Bottoni (ricreati) */
.airtum-appwrap .button, .airtum-appwrap button[type=submit] {
	display:inline-flex; align-items:center; gap:6px; cursor:pointer; text-decoration:none;
	background:#fff; border:1px solid #cfd4e2; color:#3a4055;
	padding:7px 14px; border-radius:8px; font-weight:600; font-size:13.5px; line-height:1.4;
}
.airtum-appwrap .button:hover { border-color:var(--airtum-blu); color:var(--airtum-blu); }
.airtum-appwrap .button-primary, .airtum-appwrap button[type=submit].button-primary {
	background:var(--airtum-blu); border-color:var(--airtum-blu); color:#fff;
}
.airtum-appwrap .button-primary:hover { background:#0a3bd8; border-color:#0a3bd8; color:#fff; }
.airtum-appwrap .button-hero { padding:10px 20px; font-size:14.5px; }
.airtum-appwrap .button-small { padding:4px 9px; font-size:12px; }
.airtum-appwrap .button .dashicons { font-size:16px; width:16px; height:16px; }

/* Box e card */
.airtum-appwrap .airtum-box { background:#fff; border:1px solid var(--airtum-line); border-radius:10px; padding:18px 20px; margin:16px 0; }
.airtum-appwrap .airtum-cards { display:flex; gap:14px; flex-wrap:wrap; margin:18px 0; }
.airtum-appwrap .airtum-card { flex:1 1 170px; background:#fff; border:1px solid var(--airtum-line); border-left:5px solid var(--airtum-blu); border-radius:10px; padding:16px 18px; display:flex; flex-direction:column; gap:5px; }
.airtum-appwrap .airtum-cards .airtum-card:nth-child(2){ border-left-color:var(--airtum-teal); }
.airtum-appwrap .airtum-cards .airtum-card:nth-child(3){ border-left-color:var(--airtum-giallo); }
.airtum-appwrap .airtum-cards .airtum-card:nth-child(4){ border-left-color:var(--airtum-verde); }
.airtum-appwrap .airtum-num { font-size:28px; font-weight:700; color:var(--airtum-ink); line-height:1; }
.airtum-appwrap .airtum-lbl { font-size:12.5px; color:#6b7280; }
.airtum-appwrap .airtum-grid2 { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media (max-width:820px){ .airtum-appwrap .airtum-grid2 { grid-template-columns:1fr; } }

/* Tabelle (ricreate) */
.airtum-appwrap .widefat { width:100%; border-collapse:collapse; background:#fff; border:1px solid var(--airtum-line); border-radius:10px; overflow:hidden; margin:6px 0; }
.airtum-appwrap .widefat th, .airtum-appwrap .widefat td { text-align:left; padding:9px 12px; border-bottom:1px solid #eef0f6; font-size:13px; vertical-align:top; }
.airtum-appwrap .widefat thead th { background:#f0f2fa; color:var(--airtum-ink); font-weight:700; }
.airtum-appwrap .widefat.striped tbody tr:nth-child(odd){ background:#fafbff; }
.airtum-appwrap .airtum-code { max-width:220px; line-height:1.35; }
.airtum-appwrap code { background:#f3f4f8; padding:1px 5px; border-radius:4px; font-size:12px; }

/* Sorgenti / confidenza / flag */
.airtum-appwrap .airtum-src { display:inline-block; padding:1px 7px; border-radius:4px; font-size:11px; font-weight:700; color:#fff; }
.airtum-appwrap .airtum-src-ap { background:var(--airtum-blu); }
.airtum-appwrap .airtum-src-casi { background:var(--airtum-verde); }
.airtum-appwrap .airtum-src-rencam { background:#8c6d1f; }
.airtum-appwrap .airtum-conf { display:inline-block; padding:1px 8px; border-radius:10px; font-size:11px; font-weight:700; }
.airtum-appwrap .airtum-conf-alta { background:#e3f3e7; color:var(--airtum-verde); }
.airtum-appwrap .airtum-conf-media { background:#fff6d6; color:#8a6d00; }
.airtum-appwrap .airtum-conf-bassa { background:#fde3e4; color:var(--airtum-rosso); }
.airtum-appwrap .airtum-conf-importato { background:#e7e7f5; color:#3d3d8a; }
.airtum-appwrap .airtum-row-flag { background:#fff8e5 !important; }
.airtum-appwrap .airtum-note-row td { background:#fbfbfc; color:#6b7280; }

/* Filtri di ricerca */
.airtum-appwrap .airtum-filters { display:flex; flex-wrap:wrap; gap:12px 18px; align-items:flex-end; }
.airtum-appwrap .airtum-filters label { display:flex; flex-direction:column; gap:4px; font-size:12px; font-weight:600; color:#4a5164; }
.airtum-appwrap .airtum-filters label.airtum-check { flex-direction:row; align-items:center; gap:6px; }
.airtum-appwrap input[type=text], .airtum-appwrap input[type=number], .airtum-appwrap input[type=file], .airtum-appwrap select {
	border:1px solid #cfd4e2; border-radius:7px; padding:6px 9px; font-size:13px; background:#fff; min-width:130px;
}
.airtum-appwrap input:focus, .airtum-appwrap select:focus { outline:none; border-color:var(--airtum-blu); box-shadow:0 0 0 2px rgba(0,46,201,.15); }

/* Messaggi flash */
.airtum-appwrap .airtum-flash { padding:11px 15px; border-radius:9px; margin:0 0 16px; font-size:13.5px; border:1px solid; }
.airtum-appwrap .airtum-flash-success { background:#e9f7ec; border-color:#bfe6c7; color:#1e7e34; }
.airtum-appwrap .airtum-flash-error { background:#fdeaea; border-color:#f5c2c2; color:#a12622; }

/* Avviso accesso/permesso */
.airtum-appwrap .airtum-guard { text-align:center; padding:48px 24px; }
.airtum-appwrap .airtum-guard .dashicons { font-size:44px; width:44px; height:44px; color:var(--airtum-blu); }
.airtum-appwrap .airtum-guard h2 { margin:12px 0 6px; }
.airtum-appwrap .airtum-guard p { color:#6b7280; }

/* Impaginazione */
.airtum-appwrap .tablenav-pages { margin:14px 0; display:flex; gap:5px; flex-wrap:wrap; }
.airtum-appwrap .tablenav-pages a, .airtum-appwrap .tablenav-pages .current {
	display:inline-block; padding:5px 10px; border:1px solid #cfd4e2; border-radius:7px; text-decoration:none; color:#4a5164; font-size:13px;
}
.airtum-appwrap .tablenav-pages .current { background:var(--airtum-blu); color:#fff; border-color:var(--airtum-blu); }

/* Classi minori usate dalle viste */
.airtum-appwrap .airtum-count { font-size:13.5px; margin:12px 0; }
.airtum-appwrap .airtum-pill { display:inline-block; background:#f0f0f4; border-radius:12px; padding:2px 10px; font-size:12px; color:#6b7280; margin-left:8px; }
.airtum-appwrap .airtum-pill .dashicons { font-size:13px; width:13px; height:13px; vertical-align:text-bottom; }
.airtum-appwrap .airtum-vbtn { background:none; border:none; cursor:pointer; color:#4a5164; font-weight:600; display:inline-flex; align-items:center; gap:5px; padding:0; }
.airtum-appwrap .airtum-vbtn .dashicons { font-size:16px; width:16px; height:16px; }
.airtum-appwrap .airtum-status { text-transform:capitalize; }
.airtum-appwrap .airtum-note-row .dashicons { color:var(--airtum-blu); font-size:14px; width:14px; height:14px; vertical-align:text-bottom; }
.airtum-appwrap .notice { padding:10px 14px; border-radius:8px; background:#fff; border:1px solid var(--airtum-line); margin:12px 0; }
.airtum-appwrap .notice-error { border-left:4px solid var(--airtum-rosso); }

/* ============================================================
   Modalità a tutto schermo (pagina con shortcode servita come
   documento a sé) + responsive.
   ============================================================ */
body.airtum-fullscreen {
	margin:0; padding:0; background:#f4f6fb;
	font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
body.airtum-fullscreen .airtum-appwrap {
	margin:0; border:0; border-radius:0; min-height:100vh; background:#f4f6fb;
}
body.airtum-fullscreen .airtum-appbar {
	position:sticky; top:0; z-index:100;
}
body.airtum-fullscreen .airtum-appbody {
	width:100%; max-width:100%;
	padding:22px clamp(14px,3vw,44px) 48px;
}

/* Tablet e mobile */
@media (max-width:782px) {
	.airtum-appwrap .airtum-appbar { gap:10px 12px; padding:10px 14px; }
	.airtum-appwrap .airtum-brand span span { display:none; }
	.airtum-appwrap .airtum-appnav { order:3; flex-basis:100%; flex-wrap:nowrap; overflow-x:auto; -webkit-overflow-scrolling:touch; padding-bottom:2px; }
	.airtum-appwrap .airtum-appnav a { white-space:nowrap; }
	.airtum-appwrap .airtum-appuser { margin-left:auto; }
	.airtum-appwrap .airtum-appuser .airtum-who { display:none; }
	.airtum-appwrap .airtum-appbody { padding:16px 14px 40px; }
	.airtum-appwrap .airtum-filters label { min-width:100%; }
	.airtum-appwrap .airtum-filters input[type=text],
	.airtum-appwrap .airtum-filters input[type=number],
	.airtum-appwrap .airtum-filters select { min-width:0; width:100%; }
	.airtum-appwrap .airtum-grid2 { grid-template-columns:1fr; }
	/* Tabelle scorrevoli orizzontalmente */
	.airtum-appwrap table.widefat {
		display:block; width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch;
	}
	.airtum-appwrap table.widefat thead th,
	.airtum-appwrap table.widefat tbody td { white-space:nowrap; }
	.airtum-appwrap .airtum-code { white-space:normal; }
	.airtum-appwrap .button-hero { width:100%; justify-content:center; }
}

@media (max-width:480px) {
	.airtum-appwrap .airtum-brand b { font-size:15px; }
	.airtum-appwrap .airtum-brand img { width:38px; height:38px; }
	.airtum-appwrap h1 { font-size:19px; }
	.airtum-appwrap .airtum-cards .airtum-card { flex:1 1 100%; }
}
