/*
 * Grafica nuova di MadCredits, sullo stile di Fatturalandia.
 * Caricato DOPO stili.css e menu.css: ridisegna gli elementi esistenti
 * (menu, riquadri .winall, tabelle dati, campi .input) senza toccare le pagine.
 */

:root {
	--mc-testo: #1d1d1f;
	--mc-testo2: #6e6e73;
	--mc-bordo: #d2d2d7;
	--mc-bordo-soft: #e8e8ed;
	--mc-riga: #eef0f3;
	--mc-sfondo: #f5f5f7;
	--mc-sezione: #f2f2f5;
	--mc-card: #ffffff;
	--mc-blu: #0071e3;
	--mc-blu-hover: #0077ed;
	--mc-blu-chiaro: #e5f0ff;
	--mc-rosso: #d70015;
	--mc-font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

body {
	margin: 0;
	background: var(--mc-sfondo);
	color: var(--mc-testo);
	font-family: var(--mc-font);
	-webkit-font-smoothing: antialiased;
}

body a { color: var(--mc-blu); }

/* ===================================================================== LOGIN */

body.mc-login > div[align="center"] > table {
	width: auto !important;
	background: transparent;
}
body.mc-login td[bgcolor="#2680BA" i],
body.mc-login td[style*="4E97B7"] {
	display: none;
}
body.mc-login td { background: transparent !important; }

.mc-login-sfondo {
	position: fixed;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	pointer-events: none;
}
.mc-macchia {
	position: absolute;
	border-radius: 50%;
	filter: blur(70px);
	opacity: 0.55;
}
.mc-macchia-1 { width: 520px; height: 420px; left: -120px; top: -140px; background: #9fd0ff; }
.mc-macchia-2 { width: 480px; height: 420px; right: -140px; top: -60px; background: #d4c4ff; }
.mc-macchia-3 { width: 560px; height: 380px; right: 12%; bottom: -200px; background: #f6e3a6; }

.mc-login-card {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	width: 320px;
	margin: 18vh auto 40px;
	padding: 30px 26px 22px;
	text-align: center;
	background: rgba(255, 255, 255, 0.78);
	-webkit-backdrop-filter: blur(24px);
	backdrop-filter: blur(24px);
	border: 1px solid rgba(255, 255, 255, 0.9);
	border-radius: 22px;
	box-shadow: 0 20px 60px rgba(30, 50, 90, 0.12), 0 2px 6px rgba(30, 50, 90, 0.06);
}
.mc-login-ico {
	width: 60px;
	height: 60px;
	filter: drop-shadow(0 6px 12px rgba(24, 124, 196, 0.35));
}
.mc-login-nome {
	margin-top: 10px;
	font-size: 21px;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: var(--mc-testo);
}
.mc-login-nome span,
.mc-marchio-nome span { color: var(--mc-blu); font-weight: 500; }
.mc-login-claim {
	margin: 2px 0 20px;
	font-size: 12px;
	color: var(--mc-testo2);
}
.mc-login-campo {
	display: flex;
	align-items: center;
	gap: 10px;
	height: 42px;
	margin-top: 10px;
	padding: 0 12px;
	background: #fff;
	border: 1px solid var(--mc-bordo);
	border-radius: 11px;
	cursor: text;
	transition: border-color 0.15s, box-shadow 0.15s;
}
.mc-login-campo:focus-within {
	border-color: var(--mc-blu);
	box-shadow: 0 0 0 4px rgba(0, 113, 227, 0.15);
}
.mc-login-campo svg {
	flex: none;
	width: 17px;
	height: 17px;
	fill: none;
	stroke: #8e8e93;
	stroke-width: 1.7;
	stroke-linecap: round;
}
.mc-login-campo input {
	flex: 1;
	min-width: 0;
	height: 100%;
	padding: 0;
	border: 0 !important;
	outline: 0;
	box-shadow: none !important;
	background: transparent !important;
	font: 15px var(--mc-font);
	color: var(--mc-testo);
}
.mc-login-errore {
	margin-top: 12px;
	padding: 8px 10px;
	font-size: 13px;
	color: var(--mc-rosso);
	background: #fff0f1;
	border-radius: 9px;
}
.mc-login-btn {
	width: 100%;
	height: 44px;
	margin-top: 18px;
	border: 0;
	border-radius: 11px;
	background: linear-gradient(180deg, #1a8cff, #0066d6);
	color: #fff;
	font: 600 15px var(--mc-font);
	cursor: pointer;
	box-shadow: 0 6px 16px rgba(0, 102, 214, 0.3);
	transition: filter 0.15s, transform 0.05s;
}
.mc-login-btn:hover { filter: brightness(1.06); }
.mc-login-btn:active { transform: translateY(1px); }
.mc-login-piede {
	margin-top: 16px;
	font-size: 11px;
	color: #8e8e93;
}

/* ================================================== CONTENITORE (loggato) */

body.mc-app > div[align="center"] > table[width="1280"] {
	box-sizing: border-box;
	width: calc(100% - 32px);
	/* larghezza fissa: altrimenti il contenuto (griglie, select lunghe) allarga la pagina */
	table-layout: fixed;
	margin: 16px auto;
	padding: 6px 22px 22px;
	background: var(--mc-card);
	border-radius: 20px;
	border-collapse: separate;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.06);
}
/* barre blu del vecchio layout */
body.mc-app td[bgcolor="#2680BA" i] { display: none; }
body.mc-app td[bgcolor="#FFFFFF" i] { background: transparent; }

/* ============================================================ INTESTAZIONE */

.mc-testa {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 12px 2px 16px;
	border-bottom: 1px solid var(--mc-bordo-soft);
	text-align: left;
}
.mc-marchio {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: none;
	text-decoration: none;
}
.mc-marchio-ico { width: 38px; height: 38px; }
.mc-marchio-testo { display: flex; flex-direction: column; line-height: 1.15; }
.mc-marchio-nome {
	font-size: 17px;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: var(--mc-testo);
}
.mc-marchio-claim { font-size: 11px; color: var(--mc-testo2); }
.mc-menu { flex: 1; display: flex; justify-content: center; }

/* ==================================================================== MENU */

body #info { width: auto; }
body .menu2 {
	display: inline-flex;
	align-items: center;
	gap: 2px;
	height: auto;
	padding: 5px;
	background: var(--mc-sezione);
	border-radius: 13px;
	box-shadow: inset 0 0 0 1px var(--mc-bordo-soft);
	font-family: var(--mc-font);
}
body .menu2 li.top { float: none; }
body .menu2 li a.top_link,
body .menu2 li a.top_link:hover,
body .menu2 li:hover > a.top_link {
	float: none;
	height: auto;
	padding: 8px 15px;
	line-height: 1.2;
	font-size: 14px;
	font-weight: 500;
	color: #48484a;
	background: none;
	border-radius: 9px;
	transition: background 0.15s, color 0.15s;
}
body .menu2 li a.top_link span,
body .menu2 li a.top_link span.down,
body .menu2 li a.top_link:hover span,
body .menu2 li a.top_link:hover span.down,
body .menu2 li:hover > a.top_link span,
body .menu2 li:hover > a.top_link span.down {
	float: none;
	display: inline;
	height: auto;
	padding: 0;
	background: none;
}
body .menu2 li a.top_link span.down::after {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	margin: 0 0 3px 7px;
	border-right: 1.6px solid currentColor;
	border-bottom: 1.6px solid currentColor;
	transform: rotate(45deg);
	opacity: 0.6;
}
body .menu2 li:hover > a.top_link { background: var(--mc-blu-chiaro); color: var(--mc-blu); }
body .menu2 li.mc-attivo > a.top_link {
	background: var(--mc-blu);
	color: #fff;
	font-weight: 600;
	box-shadow: 0 2px 6px rgba(0, 113, 227, 0.3);
}
body .menu2 li.mc-esci > a.top_link { color: var(--mc-testo2); }
body .menu2 li.mc-esci:hover > a.top_link { background: #fff0f1; color: var(--mc-rosso); }

/* tendine */
body .menu2 :hover ul.sub {
	left: 0;
	top: 100%;
	width: auto;
	min-width: 230px;
	padding: 6px;
	background: #fff;
	border: 1px solid var(--mc-bordo-soft);
	border-radius: 13px;
	box-shadow: 0 14px 36px rgba(0, 0, 0, 0.13);
}
body .menu2 :hover ul.sub li {
	float: none;
	width: auto;
	height: auto;
}
body .menu2 :hover ul.sub li a,
body .menu2 :hover ul.sub li a:hover {
	width: auto;
	height: auto;
	padding: 9px 12px;
	line-height: 1.2;
	text-indent: 0;
	font-size: 13.5px;
	color: var(--mc-testo);
	border: 0;
	border-radius: 8px;
	white-space: nowrap;
}
body .menu2 :hover ul.sub li a:hover { background: var(--mc-blu-chiaro); color: var(--mc-blu); }

/* ========================================================= TITOLI E TESTO */

body.mc-app .testo,
body.mc-app .winall,
body.mc-app .winall td,
body.mc-app td {
	font-family: var(--mc-font);
}
body.mc-app .testo,
body.mc-app .testo td { font-size: 13px; color: var(--mc-testo); }

/* titolo di pagina (es. "GESTIONE PRATICHE") */
body.mc-app td[style*="4172E4"] > b:first-child {
	display: block;
	margin: 20px 0 14px;
	font-size: 23px;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: var(--mc-testo);
	text-transform: lowercase;
}
body.mc-app td[style*="4172E4"] > b:first-child::first-letter { text-transform: uppercase; }

body.mc-app .greytext1 {
	text-align: left;
	font-size: 15px;
	color: var(--mc-testo);
	padding: 4px 4px 10px;
}
body.mc-app .intestap,
body.mc-app .titolo2 { font-size: 15px; font-weight: 700; color: var(--mc-testo); }

/* ============================================ RIQUADRI (ricerca, form, ...) */

body.mc-app table.winall,
body.mc-app table[style*="1px solid #000000"] {
	border: 1px solid var(--mc-bordo-soft) !important;
	border-collapse: separate !important;
	border-radius: 16px;
	background: var(--mc-sezione);
	padding: 10px 12px;
	margin-bottom: 14px;
}
body.mc-app table.winall table,
body.mc-app table[style*="1px solid #000000"] table { background: transparent; }

/* ================================================================== CAMPI */

body.mc-app input[type="text"],
body.mc-app input[type="password"],
body.mc-app input[type="email"],
body.mc-app input[type="number"],
body.mc-app input:not([type]),
body.mc-app select,
body.mc-app textarea {
	box-sizing: border-box;
	min-height: 32px;
	padding: 5px 10px;
	font: 13px var(--mc-font);
	color: var(--mc-testo);
	background: #fff;
	border: 1px solid var(--mc-bordo);
	border-radius: 8px;
	outline: 0;
	transition: border-color 0.15s, box-shadow 0.15s;
}
body.mc-app select { padding-right: 6px; }
body.mc-app input[type="text"]:focus,
body.mc-app input[type="password"]:focus,
body.mc-app input:not([type]):focus,
body.mc-app select:focus,
body.mc-app textarea:focus {
	border-color: var(--mc-blu);
	box-shadow: 0 0 0 3px rgba(0, 113, 227, 0.15);
}

/* bottoni */
body.mc-app input[type="submit"],
body.mc-app input[type="button"],
body.mc-app button {
	min-height: 34px;
	padding: 0 18px;
	font: 600 13.5px var(--mc-font);
	color: #fff;
	background: var(--mc-blu);
	border: 0;
	border-radius: 980px;
	cursor: pointer;
	box-shadow: 0 2px 6px rgba(0, 113, 227, 0.25);
	transition: background 0.15s;
}
body.mc-app input[type="submit"]:hover,
body.mc-app input[type="button"]:hover,
body.mc-app button:hover { background: var(--mc-blu-hover); }

/* link d'azione ("RICERCA", "NASCONDI RICERCA", ...): pillola secondaria */
body.mc-app a.redtext {
	display: inline-flex;
	align-items: center;
	padding: 6px 15px;
	margin: 4px 0;
	font-size: 12.5px;
	color: var(--mc-blu);
	text-decoration: none;
	background: #fff;
	border: 1px solid var(--mc-bordo);
	border-radius: 980px;
	transition: background 0.15s;
}
body.mc-app a.redtext:hover { background: var(--mc-blu-chiaro); }
body.mc-app a.redtext b { font-weight: 600; }
/* "INSERISCI NUOVA PRATICA" e simili: pillola principale */
body.mc-app a.redtext[href*="mostra=1"] {
	color: #fff;
	background: var(--mc-blu);
	border-color: var(--mc-blu);
	box-shadow: 0 2px 6px rgba(0, 113, 227, 0.25);
}
body.mc-app a.redtext[href*="mostra=1"]:hover { background: var(--mc-blu-hover); }
/* numeri e date evidenziati nelle righe */
body.mc-app span.redtext { color: var(--mc-testo); font-weight: 600; }

/* =========================================================== TABELLE DATI */

body.mc-app table[border="1"] {
	border-collapse: separate !important;
	border-spacing: 0;
	border: 1px solid var(--mc-bordo-soft) !important;
	border-radius: 16px;
	overflow: hidden;
	background: #fff;
}
body.mc-app table[border="1"] > tbody > tr > td,
body.mc-app table[border="1"] > tbody > tr > th,
body.mc-app table[border="1"] > tr > td {
	padding: 9px 10px;
	border: 0 !important;
	border-bottom: 1px solid var(--mc-riga) !important;
	line-height: 1.4;
}
body.mc-app table[border="1"] > tbody > tr:last-child > td { border-bottom: 0 !important; }
body.mc-app table[border="1"] tr.intesta > td,
body.mc-app table[border="1"] tr.intesta > th {
	background: #fafafc;
	color: var(--mc-testo2);
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
body.mc-app table[border="1"] tr.intesta b { font-weight: 600; }
body.mc-app table[border="1"] a { text-decoration: none; }
body.mc-app table[border="1"] img { vertical-align: middle; }

/* ------------------------------------------------------------------------
 * Colori di stato delle pratiche (listapratiche.php): stesso significato,
 * toni piu' morbidi + barra colorata a sinistra della riga.
 *   azzurro = allarme scaduto      giallo chiaro = allarme futuro
 *   giallo  = allarme oggi         viola = modificata dall'agente
 *   rosso   = chiusa negativa      verde = chiusa positiva
 * ------------------------------------------------------------------------ */
body.mc-app td[bgcolor="#68CCEC" i] { background-color: #d5eefa !important; }
body.mc-app td[bgcolor="#F1F29F" i] { background-color: #fbf7cf !important; }
body.mc-app td[bgcolor="#FFF200" i] { background-color: #fff1a1 !important; }
body.mc-app td[bgcolor="#CBAEFF" i] { background-color: #ebe2ff !important; }
body.mc-app td[bgcolor="#FDB3B3" i] { background-color: #fde1e1 !important; }
body.mc-app td[bgcolor="#99FF9F" i] { background-color: #d9f8dc !important; }
body.mc-app td[bgcolor="#DDEAF6" i] { background-color: #f4f8fc !important; }
body.mc-app td[bgcolor="#FAFAFA" i] { background-color: #ffffff !important; }

body.mc-app tr > td:first-child[bgcolor="#68CCEC" i] { box-shadow: inset 4px 0 0 #0ea5e9; }
body.mc-app tr > td:first-child[bgcolor="#F1F29F" i] { box-shadow: inset 4px 0 0 #d6c21c; }
body.mc-app tr > td:first-child[bgcolor="#FFF200" i] { box-shadow: inset 4px 0 0 #eab308; }
body.mc-app tr > td:first-child[bgcolor="#CBAEFF" i] { box-shadow: inset 4px 0 0 #7d4dff; }
body.mc-app tr > td:first-child[bgcolor="#FDB3B3" i] { box-shadow: inset 4px 0 0 #e11d48; }
body.mc-app tr > td:first-child[bgcolor="#99FF9F" i] { box-shadow: inset 4px 0 0 #16a34a; }

body.mc-app table[border="1"] tr:hover > td[bgcolor] { filter: brightness(0.97); }

/* celle delle azioni (modifica / cancella) colorate nel vecchio layout */
body.mc-app td[bgcolor="#B1D3D7" i],
body.mc-app td[bgcolor="#FF8080" i],
body.mc-app tr[bgcolor="#B8D6E2" i] > td:not([bgcolor]) { background-color: transparent !important; }
body.mc-app td[bgcolor="#EEF6FF" i] { background-color: #f4f8fc !important; }

/* lente grande nei riquadri di ricerca: il titolo basta */
body.mc-app img[src$="images/find.gif"]:not([width]) { display: none; }

/* icone d'azione (images/ico/*.svg) */
body.mc-app img[src*="images/ico/"] {
	width: 28px;
	height: 28px;
	vertical-align: middle;
	transition: transform 0.12s, filter 0.12s;
}
body.mc-app img[src*="images/ico/"][width="20"] { width: 22px; height: 22px; }
body.mc-app a:hover img[src*="images/ico/"],
body.mc-app input[type="image"][src*="images/ico/"]:hover,
body.mc-app img[src*="images/ico/"][onclick]:hover {
	transform: translateY(-1px);
	filter: brightness(0.95) saturate(1.3);
	cursor: pointer;
}
/* pulsanti-immagine (es. esportazione Excel) senza lo stile dei bottoni */
body.mc-app input[type="image"] {
	min-height: 0;
	padding: 0;
	background: none;
	box-shadow: none;
	border-radius: 0;
	vertical-align: middle;
}

/* ================================================= GRIGLIE dhtmlx (skin light) */

body.mc-app div.gridbox {
	/* content-box: dhtmlx a ogni setSizes() rimette style.width/height = client*;
	   con border-box il riquadro perdeva 2px a ogni chiamata (es. ridimensionando una colonna) */
	box-sizing: content-box;
	padding: 0;
	border: 1px solid var(--mc-bordo-soft) !important;
	border-radius: 14px;
	overflow: hidden;
	background: #fff;
	max-width: 100%;
}
body.mc-app div.gridbox table.hdr td {
	height: auto !important;
	padding: 8px 8px !important;
	background: #fafafc !important;
	border-color: var(--mc-riga) !important;
	color: var(--mc-testo2) !important;
	font: 600 11.5px var(--mc-font) !important;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}
body.mc-app div.gridbox table.hdr td div.hdrcell { padding: 0 !important; }
body.mc-app div.gridbox table.obj td {
	padding: 8px 10px !important;
	border-color: var(--mc-riga) !important;
	border-left: 0 !important;
	border-right: 0 !important;
	color: var(--mc-testo) !important;
	font: 13.5px/1.35 var(--mc-font) !important;
	background-image: none !important;
}
body.mc-app div.gridbox table.obj tr.odd_light td,
body.mc-app div.gridbox table.obj tr.ev_light td { background-color: #fff; }
body.mc-app div.gridbox table.obj tr:nth-child(even) td { background-color: #f9fafc; }
body.mc-app div.gridbox table.obj tr.rowselected td,
body.mc-app div.gridbox table.obj tr:hover td { background-color: var(--mc-blu-chiaro) !important; }
body.mc-app div.gridbox table.obj td.cellselected { box-shadow: inset 0 0 0 2px rgba(0, 113, 227, 0.35); }

/* bottoni dentro la griglia: piccoli */
body.mc-app div.gridbox button,
body.mc-app div.gridbox input[type="button"] {
	min-height: 0;
	height: 24px;
	padding: 0 11px;
	font: 600 11.5px var(--mc-font);
	border-radius: 7px;
	box-shadow: none;
	text-transform: none;
	letter-spacing: 0;
}
body.mc-app div.gridbox table.obj button {
	color: var(--mc-rosso);
	background: #fdecee;
}
body.mc-app div.gridbox table.obj button:hover { background: #fbd9dd; }

/* select con opzioni lunghissime (committenti, banche): senza limite allargano la pagina */
body.mc-app select { max-width: min(560px, 32vw); }

/* fondo dell'intestazione della griglia oltre l'ultima colonna */
body.mc-app div.gridbox div.xhdr { background: #fafafc !important; }

/* pagine dentro iframe (es. allegatipratiche.php nella scheda pratica) */
body.mc-iframe { background: #fff; padding: 8px 4px; }
body.mc-iframe table.winall { margin-bottom: 8px; padding: 6px 8px; }
