/* Restyling 2026 - skin applicata sopra css/stili6.php, non lo sostituisce.
   Copre solo la cornice dell'app (header, selettore condominio, menu laterale,
   pagina intro) - le pagine di contenuto interne (tabelle, form) restano invariate.

   Tema chiaro/scuro: attivabile SOLO dal pulsante in alto (attributo data-theme
   sull'elemento html, salvato in localStorage) - MAI automatico dal tema del
   sistema operativo. #div_main (l'area dove vengono caricate le ~150 pagine di
   contenuto non modificate, che usano colori di testo fissi tipo color:#333333
   senza sfondo proprio) resta sempre chiaro anche a tema scuro attivo, per non
   rendere illeggibile quel testo. Il tema scuro copre la cornice (barra in alto,
   barra condominio, menu laterale - gia' sempre scura di suo) e il riepilogo
   sintetico di intro.php, che e' stato disegnato per entrambi i temi. */

:root{
	--edg-ink:#16233A;
	--edg-sidebar:#101A29;
	--edg-bg:#EEF0EC;
	--edg-surface:#FFFFFF;
	--edg-surface-2:#F7F7F3;
	--edg-line:#D9D8CC;
	--edg-text:#1B2333;
	--edg-text-muted:#5B6472;
	--edg-accent:#B4802F;
	--edg-accent-ink:#7A5620;
	--edg-accent-soft:#F2E6CF;
	--edg-good:#2E7D4F;
	--edg-good-soft:#E3EFE6;
	--edg-warn:#BD5B23;
	--edg-warn-soft:#F5E8DC;
	--edg-bad:#A63A34;
	--edg-bad-soft:#F3E1DF;
	--edg-shadow: 0 1px 2px rgba(22,35,58,.06), 0 8px 20px rgba(22,35,58,.06);
}
:root[data-theme="dark"]{
	--edg-bg:#121821;
	--edg-surface:#1A2230;
	--edg-surface-2:#1F2836;
	--edg-line:#2B3546;
	--edg-text:#E7E5DD;
	--edg-text-muted:#9AA3AF;
	--edg-accent:#D6A45A;
	--edg-accent-ink:#F2D8A6;
	--edg-accent-soft:#332715;
	--edg-good:#59B57F;
	--edg-good-soft:#16261D;
	--edg-warn:#E2884E;
	--edg-warn-soft:#2E2015;
	--edg-bad:#E1746C;
	--edg-bad-soft:#2E1917;
	--edg-shadow: 0 1px 2px rgba(0,0,0,.4), 0 10px 24px rgba(0,0,0,.35);
}
:root[data-theme="dark"] #corpo_sito{ background:var(--edg-bg); }

#maincontent, #maincontent input, #maincontent select, #maincontent textarea{
	font-family:-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

/* ---------- barra superiore (titolo.php) ---------- */
#header_sito{
	background:var(--edg-ink);
	padding:10px 18px !important;
	display:flex;
	align-items:center;
	float:none;
}
#header_sito .logo{ float:none; display:flex; align-items:center; }
.edg-brand{
	display:flex;
	align-items:center;
	gap:10px;
	text-decoration:none;
}
.edg-brand:hover{ text-decoration:none; }
.edg-brand .edg-word{
	font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
	font-size:1.3em;
	color:#fff;
	white-space:nowrap;
}
.edg-brand .edg-word .at{ color:var(--edg-accent); font-weight:600; }
#header_sito .marchio{
	float:none;
	margin-left:auto;
	display:flex;
	align-items:center;
	gap:10px;
}
#header_sito .marchio img{ display:none; }
#header_sito .marchio a{ color:#fff; opacity:.75; }
#header_sito .marchio a:hover{ opacity:1; }
.edg-theme-btn{
	background:rgba(255,255,255,.08);
	border:1px solid rgba(255,255,255,.25);
	color:#fff;
	width:28px;
	height:28px;
	border-radius:7px;
	cursor:pointer;
	font-size:.95em;
	line-height:1;
	vertical-align:middle;
}
.edg-theme-btn:hover{ background:rgba(255,255,255,.16); }
#header_sito hr{ display:none; }

/* ---------- barra condominio (sottotitolo_ufficio.php) ---------- */
#header_ufficio_sito{
	background:var(--edg-surface);
	border-bottom:1px solid var(--edg-line);
	padding:12px 18px !important;
	float:none;
}
#header_ufficio_sito hr{ display:none; }
.header_ufficio_desc{
	float:none;
	padding:0 !important;
}
.header_ufficio_desc .title6{
	font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
	font-size:1.15em;
	color:var(--edg-text);
}
#ufficio_attivo select{
	font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
	font-size:1em;
	background:var(--edg-surface-2);
	border:1px solid var(--edg-line);
	border-radius:6px;
	padding:5px 8px;
	color:var(--edg-text);
}
#header_ufficio_sito .noview_menu{ float:right; }
#header_ufficio_sito .noview_menu a{
	font-size:.78em;
	color:var(--edg-text-muted);
	border:1px solid var(--edg-line);
	border-radius:14px;
	padding:4px 10px;
	display:inline-block;
}
#header_ufficio_sito .noview_menu a:hover{ background:var(--edg-surface-2); text-decoration:none; }

/* ---------- corpo: menu laterale + contenuto ---------- */
/* Il layout a due colonne si applica solo quando c'e' davvero il menu laterale
   (utente autenticato). Senza, #corpo_sito contiene solo il form di login e
   NON deve diventare un flex row, altrimenti si spezza il layout della pagina
   di accesso (i vari form/div diventano colonne affiancate). */
#corpo_sito:has(> #div_menu){
	display:flex;
	align-items:flex-start;
	gap:0;
	background:var(--edg-bg);
}
#div_menu.menu{
	float:none;
	width:240px;
	flex:none;
	background:var(--edg-sidebar);
	min-height:calc(100vh - 130px);
	padding:14px 8px 20px;
}
#div_main.main{
	float:none;
	width:auto;
	flex:1 1 auto;
	min-width:0;
	padding:22px 26px 60px;
	background:#FFFFFF;
}
#div_main.main .footer{ display:none !important; }

/* gruppi ADMIN / Ricerche / Servizio */
#div_menu .sidebar > ul{ margin:0; padding:0; list-style:none; }
#div_menu li.sidebar{
	list-style:none;
	text-transform:uppercase;
	letter-spacing:.08em;
	font-size:.72em;
	font-weight:700;
	color:#8B93A3;
	padding:12px 10px 6px;
}
#div_menu li.sidebar a{ color:#8B93A3; }
#div_menu li.sidebar a:hover{ color:#fff; text-decoration:none; }

#menu_admin, #menu_ricerche, #menu_servizio{
	background:transparent;
}
#menu_admin ul, #menu_ricerche ul, #menu_servizio ul{
	list-style:none; margin:0 0 6px; padding:0;
}
#menu_admin li, #menu_ricerche li, #menu_servizio li{
	margin:0;
}
#menu_admin li a, #menu_ricerche li a, #menu_servizio li a,
#menu_admin li.settore2 a, #menu_ricerche li.settore2 a, #menu_servizio li.settore2 a{
	display:block;
	padding:8px 10px 8px 14px;
	margin:1px 0;
	border-radius:7px;
	border-left:2px solid transparent;
	font-size:.88em;
	color:#C7CCD6 !important;
	font-weight:normal;
}
#menu_admin li a:hover, #menu_ricerche li a:hover, #menu_servizio li a:hover{
	background:rgba(255,255,255,.06);
	color:#fff !important;
	text-decoration:none;
}
#menu_admin li.settore2_select a, #menu_ricerche li.settore2_select a, #menu_servizio li.settore2_select a{
	background:rgba(180,128,47,.22);
	color:#E9C381 !important;
	border-left-color:var(--edg-accent);
}

.dimezza_font{
	margin-top:16px;
	padding:14px 12px 4px;
	border-top:1px solid rgba(255,255,255,.1);
	font-size:.8em !important;
}
.dimezza_font, .dimezza_font b{ color:#DCE0E7 !important; }
.dimezza_font font{ color:#8B93A3 !important; }
.dimezza_font a{ color:var(--edg-accent) !important; }

/* ---------- pagina Riepilogo (intro.php) ---------- */
.edg-ledger{
	background:var(--edg-surface);
	border:1px solid var(--edg-line);
	border-radius:10px;
	box-shadow:var(--edg-shadow);
	overflow:hidden;
	margin:14px 0 20px;
	max-width:760px;
}
.edg-ledger-head{
	padding:14px 18px;
	border-bottom:1px solid var(--edg-line);
	background:var(--edg-surface-2);
	font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
	font-size:1.05em;
	color:var(--edg-text);
}
.edg-row{
	display:flex;
	align-items:center;
	gap:12px;
	padding:13px 18px;
	border-bottom:1px solid var(--edg-line);
}
.edg-row:last-child{ border-bottom:none; }
.edg-stripe{ width:4px; align-self:stretch; border-radius:3px; min-height:26px; flex:none; }
.edg-stripe.good{ background:var(--edg-good); }
.edg-stripe.warn{ background:var(--edg-warn); }
.edg-stripe.bad{ background:var(--edg-bad); }
.edg-label{ flex:1 1 auto; font-size:.92em; color:var(--edg-text); }
.edg-amount{ font-weight:600; font-size:1.05em; font-variant-numeric:tabular-nums; white-space:nowrap; }
.edg-amount.good{ color:var(--edg-good); }
.edg-amount.warn{ color:var(--edg-warn); }
.edg-amount.bad{ color:var(--edg-bad); }
.edg-pill{
	font-size:.68em; font-weight:600; letter-spacing:.02em;
	padding:3px 9px; border-radius:20px; white-space:nowrap;
}
.edg-pill.good{ background:var(--edg-good-soft); color:var(--edg-good); }
.edg-pill.warn{ background:var(--edg-warn-soft); color:var(--edg-warn); }
.edg-pill.bad{ background:var(--edg-bad-soft); color:var(--edg-bad); }
.edg-bacheca{
	max-width:760px;
	background:var(--edg-surface);
	border:1px solid var(--edg-line);
	border-radius:8px;
	padding:4px 16px;
	font-size:.88em;
	color:var(--edg-text);
	margin:10px 0 20px;
}
.edg-bacheca b{ color:var(--edg-text); }
.edg-bacheca-riga{
	padding:10px 0;
	border-bottom:1px solid var(--edg-line);
}
.edg-bacheca-riga:last-child{ border-bottom:none; }
.edg-bacheca-riga .edg-pill{ margin-right:6px; vertical-align:middle; }

/* ---------- pagina di accesso (accesso.php) ---------- */
#table_login{
	max-width:380px;
	margin:56px auto;
}
#table_login fieldset{
	background:var(--edg-surface);
	border:1px solid var(--edg-line);
	border-radius:10px;
	box-shadow:var(--edg-shadow);
	padding:22px 28px 26px;
}
#table_login legend{
	font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
	font-size:1.15em;
	color:var(--edg-text);
	padding:0 8px;
}
#table_login label{ font-size:.85em; color:var(--edg-text-muted); }
#table_login input#idanagraficagdp,
#table_login input#passwordgdp{
	width:100%;
	box-sizing:border-box;
	padding:8px 10px;
	margin-top:4px;
	border:1px solid var(--edg-line);
	border-radius:6px;
	font-size:.95em;
}
#table_login a.button{
	background:var(--edg-accent);
	border:none;
	padding:8px 18px;
	border-radius:6px;
	font-weight:600;
}
#table_login a.button:hover{ background:var(--edg-accent-ink); text-decoration:none; }

@media (max-width: 860px){
	#corpo_sito{ display:block; }
	#div_menu.menu{ width:auto; min-height:0; }
	#div_main.main{ padding:18px; }
}
