/*
Theme Name: GD Platform
Theme URI: https://example.com
Author: GD Platform
Description: Tema white-label para a aplicação de gestão de geração distribuída.
Version: 2.0.54
Requires at least: 6.6
Requires PHP: 8.2
*/
:root{
	--gdp-primary:#3B56CF;
	--gdp-secondary:#F63BB1;
	--gdp-sidebar:#0d1930;
	--gdp-sidebar-soft:#15233e;
	--gdp-bg:#f4f7fb;
	--gdp-text:#12213a;
	--gdp-muted:#718096;
	--gdp-border:#e1e7f0;
	--gdp-white:#fff;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
	font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
	color:var(--gdp-text);
	background:var(--gdp-bg);
	-webkit-font-smoothing:antialiased;
}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
.gdp-app-shell{display:flex;min-height:100vh}
.gdp-sidebar{
	position:fixed;
	z-index:30;
	inset:0 auto 0 0;
	width:238px;
	padding:18px 14px 22px;
	overflow:auto;
	background:
		radial-gradient(circle at 15% 0,color-mix(in srgb,var(--gdp-secondary) 15%, transparent),transparent 24%),
		linear-gradient(180deg,#0c1830,#0a1428);
	color:#fff;
	border-right:1px solid rgba(255,255,255,.045);
}
.gdp-brand{
	padding:2px 8px 18px;
	border-bottom:1px solid rgba(255,255,255,.065);
	margin-bottom:12px;
}
.gdp-brand-logo{
	min-height:42px;
	display:flex;
	align-items:center;
	gap:10px;
	color:#fff;
	font-size:18px;
	font-weight:800;
}
.gdp-brand-logo img{
	display:block;
	max-width:145px;
	max-height:46px;
	object-fit:contain;
	object-position:left center;
}
.gdp-brand-mark{
	width:34px;
	height:34px;
	border-radius:11px;
	background:linear-gradient(135deg,var(--gdp-primary),var(--gdp-secondary));
	box-shadow:0 7px 18px rgba(246,59,177,.16);
}
.gdp-brand-service{
	margin-top:2px;
	color:#7f8ba2;
	font-size:9px;
	line-height:1.35;
}
.gdp-menu-group{margin-top:14px}
.gdp-menu-label{
	padding:0 10px 5px;
	color:#60708d;
	font-size:8px;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.12em;
}
.gdp-menu-link{
	display:flex;
	align-items:center;
	gap:10px;
	min-height:35px;
	margin:2px 0;
	padding:8px 10px;
	border-radius:9px;
	color:#aeb9cc;
	font-size:11px;
	font-weight:650;
	transition:.16s ease;
}
.gdp-menu-link:hover{
	color:#fff;
	background:rgba(255,255,255,.055);
}
.gdp-menu-link.active{
	color:#fff;
	background:linear-gradient(90deg,color-mix(in srgb,var(--gdp-primary) 82%, #1d3768),color-mix(in srgb,var(--gdp-primary) 55%, #162a4f));
	box-shadow:0 5px 15px rgba(0,0,0,.14);
}
.gdp-menu-icon{
	width:18px;
	height:18px;
	display:flex;
	align-items:center;
	justify-content:center;
	flex:0 0 18px;
}
.gdp-menu-icon svg{
	width:15px;
	height:15px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.8;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.gdp-main{
	margin-left:238px;
	width:calc(100% - 238px);
	min-height:100vh;
}
.gdp-topbar{
	position:sticky;
	top:0;
	z-index:20;
	height:62px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:18px;
	padding:0 24px;
	background:rgba(255,255,255,.96);
	backdrop-filter:blur(10px);
	border-bottom:1px solid var(--gdp-border);
}
.gdp-topbar-left,
.gdp-topbar-right{
	display:flex;
	align-items:center;
	gap:12px;
}
.gdp-topbar-left{min-width:0;flex:1}
.gdp-sidebar-toggle{
	display:none;
	width:34px;
	height:34px;
	padding:8px;
	border:1px solid var(--gdp-border);
	border-radius:9px;
	background:#fff;
}
.gdp-sidebar-toggle span{
	display:block;
	height:2px;
	margin:3px 0;
	background:#526078;
	border-radius:2px;
}
.gdp-global-search{
	width:min(460px,48vw);
	min-height:36px;
	display:flex;
	align-items:center;
	gap:8px;
	padding:0 10px;
	border:1px solid var(--gdp-border);
	border-radius:9px;
	background:#f9fbfe;
	color:#8b96a8;
}
.gdp-global-search svg{
	width:15px;
	height:15px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.9;
}
.gdp-global-search input{
	width:100%;
	border:0;
	outline:0;
	background:transparent;
	color:#344258;
	font-size:10px;
}
.gdp-global-search-static{font-size:10px}
.gdp-search-hint{
	flex:0 0 auto;
	padding:3px 6px;
	border:1px solid #e2e7ef;
	border-radius:5px;
	background:#fff;
	font-size:8px;
}
.gdp-topbar-notification{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	width:34px;
	height:34px;
	border-radius:9px;
	color:#536179;
}
.gdp-topbar-notification:hover{background:#f5f7fb}
.gdp-topbar-notification svg{
	width:18px;
	height:18px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.8;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.gdp-topbar-notification>span{
	position:absolute;
	top:2px;
	right:1px;
	min-width:15px;
	height:15px;
	padding:0 3px;
	display:flex;
	align-items:center;
	justify-content:center;
	border:2px solid #fff;
	border-radius:999px;
	background:var(--gdp-secondary);
	color:#fff;
	font-size:7px;
	font-weight:800;
}
.gdp-user-menu{
	display:flex;
	align-items:center;
	gap:8px;
	padding-left:6px;
}
.gdp-user-avatar{
	width:32px;
	height:32px;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:50%;
	background:linear-gradient(135deg,color-mix(in srgb,var(--gdp-primary) 13%, #fff),color-mix(in srgb,var(--gdp-secondary) 10%, #fff));
	border:1px solid #dde4ef;
	color:var(--gdp-primary);
	font-size:9px;
	font-weight:900;
}
.gdp-user-copy{min-width:0}
.gdp-user-copy strong,
.gdp-user-copy small{display:block;white-space:nowrap}
.gdp-user-copy strong{max-width:135px;overflow:hidden;text-overflow:ellipsis;font-size:9px}
.gdp-user-copy small{margin-top:1px;color:#8994a6;font-size:7px}
.gdp-logout{
	margin-left:4px;
	color:var(--gdp-secondary);
	font-size:9px;
	font-weight:800;
}
.gdp-content{
	min-height:calc(100vh - 62px);
}
.gdp-muted{color:var(--gdp-muted)}
@media(max-width:980px){
	.gdp-sidebar{
		transform:translateX(-100%);
		transition:transform .2s ease;
		box-shadow:15px 0 45px rgba(6,15,31,.22);
	}
	body.gdp-sidebar-open .gdp-sidebar{transform:translateX(0)}
	.gdp-main{margin-left:0;width:100%}
	.gdp-sidebar-toggle{display:block}
	.gdp-global-search{width:min(520px,60vw)}
}
@media(max-width:680px){
	.gdp-topbar{padding:0 12px}
	.gdp-global-search{width:42vw}
	.gdp-global-search-static span,
	.gdp-search-hint,
	.gdp-user-copy{display:none}
	.gdp-content{padding-left:0;padding-right:0}
}


/* =========================================================
   GD Platform Theme 2.0.1 — base estrutural compartilhada
   ========================================================= */
.gdp-grid{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:14px;
}
.gdp-card{
	background:#fff;
	border:1px solid var(--gdp-border);
	border-radius:14px;
	padding:16px;
	box-shadow:0 8px 28px rgba(15,23,42,.045);
}
.gdp-kpi{
	min-height:104px;
	display:flex;
	flex-direction:column;
	justify-content:center;
}
.gdp-kpi b{
	display:block;
	margin-top:5px;
	font-size:25px;
}
.gdp-form{
	display:grid;
	gap:15px;
	width:100%;
	max-width:1180px;
}
.gdp-form-row{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:13px;
}
.gdp-field{
	display:grid;
	gap:6px;
	min-width:0;
	font-size:11px;
	font-weight:700;
}
.gdp-field input,
.gdp-field select,
.gdp-field textarea{
	width:100%;
	min-width:0;
	border:1px solid var(--gdp-border);
	border-radius:9px;
	padding:9px 11px;
	background:#fff;
	color:var(--gdp-text);
}
.gdp-field input[type=color]{
	width:58px;
	padding:3px;
}
.gdp-field small{
	font-size:9px;
	font-weight:400;
	color:#8591a4;
}
.gdp-span-2{grid-column:span 2}
.gdp-span-3{grid-column:span 3}
.gdp-toolbar,
.gdp-filterbar{
	display:flex;
	align-items:center;
	gap:9px;
	width:100%;
}
.gdp-grow{
	flex:1 1 360px;
	min-width:180px;
}
.gdp-head-actions{
	display:flex;
	align-items:center;
	gap:8px;
	flex-wrap:wrap;
}
.gdp-logo-preview{
	padding:14px;
	border:1px dashed var(--gdp-border);
	border-radius:12px;
	width:max-content;
}
.gdp-logo-preview img{
	max-width:220px;
	max-height:90px;
	display:block;
}
.gdp-mt{margin-top:18px}

@media(max-width:1180px){
	.gdp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.gdp-form-row{grid-template-columns:repeat(2,minmax(0,1fr))}
	.gdp-span-3{grid-column:span 2}
}
@media(max-width:760px){
	.gdp-grid,
	.gdp-form-row{
		grid-template-columns:1fr;
	}
	.gdp-span-2,
	.gdp-span-3{
		grid-column:auto;
	}
}


/* Theme 2.0.2 — densidade e hierarquia do shell */
.gdp-topbar{
	height:60px;
	padding-left:22px;
	padding-right:22px;
}
.gdp-content{
	min-height:calc(100vh - 60px);
}
.gdp-global-search{
	width:min(500px,50vw);
	background:#fbfcfe;
}
.gdp-global-search-static{
	cursor:default;
}
.gdp-menu-link{
	min-height:34px;
}
.gdp-menu-group{
	margin-top:12px;
}
.gdp-menu-label{
	padding-bottom:4px;
}
@media(max-width:980px){
	.gdp-global-search{width:min(500px,58vw)}
}


/* Theme 2.0.3 — feedback de interação consistente */
.gdp-ui-v2 a,
.gdp-ui-v2 button{
	-webkit-tap-highlight-color:transparent;
}
.gdp-ui-v2 button{
	font-family:inherit;
}


/* Theme 2.0.4 — consistência visual de KPIs */
.gdp-ui-v2 .gdp-kpi{
	text-align:center;
}


/* =========================================================
   Theme 2.0.5 — Login white-label
   ========================================================= */
body.gdp-login-v2{
	min-height:100vh;
	margin:0;
	background:
		radial-gradient(circle at 12% 12%,color-mix(in srgb,var(--gdp-secondary) 8%, transparent),transparent 30%),
		radial-gradient(circle at 88% 88%,color-mix(in srgb,var(--gdp-primary) 8%, transparent),transparent 34%),
		#f4f7fb;
	color:var(--gdp-text);
}
body.gdp-login-v2 #wpadminbar{
	display:none !important;
}
body.gdp-login-v2{
	padding-top:0 !important;
}
.gdp-login-shell{
	min-height:100vh;
	display:grid;
	grid-template-columns:minmax(0,520px) minmax(420px,1fr);
	align-items:stretch;
}
.gdp-login-panel{
	display:flex;
	flex-direction:column;
	justify-content:center;
	width:100%;
	max-width:520px;
	padding:54px 64px;
	background:#fff;
	border-right:1px solid var(--gdp-border);
	box-shadow:16px 0 44px rgba(15,23,42,.045);
}
.gdp-login-brand{
	margin-bottom:34px;
}
.gdp-login-logo{
	display:block;
	width:auto;
	max-width:210px;
	max-height:72px;
	object-fit:contain;
	object-position:left center;
}
.gdp-login-brand-fallback{
	display:flex;
	align-items:center;
	gap:10px;
	color:var(--gdp-text);
	font-size:23px;
	font-weight:850;
}
.gdp-login-brand-mark{
	width:42px;
	height:42px;
	border-radius:13px;
	background:linear-gradient(135deg,var(--gdp-primary),var(--gdp-secondary));
	box-shadow:0 9px 22px color-mix(in srgb,var(--gdp-primary) 20%, transparent);
}
.gdp-login-service{
	margin-top:9px;
	color:#7c889c;
	font-size:11px;
	line-height:1.45;
}
.gdp-login-copy{
	margin-bottom:24px;
}
.gdp-login-eyebrow{
	display:block;
	margin-bottom:7px;
	color:var(--gdp-primary);
	font-size:10px;
	font-weight:850;
	text-transform:uppercase;
	letter-spacing:.09em;
}
.gdp-login-copy h1{
	margin:0;
	color:#13223a;
	font-size:30px;
	line-height:1.12;
	letter-spacing:-.035em;
}
.gdp-login-copy p{
	margin:8px 0 0;
	color:#7a8699;
	font-size:12px;
	line-height:1.55;
}
.gdp-login-alert{
	display:flex;
	align-items:flex-start;
	gap:9px;
	margin-bottom:18px;
	padding:11px 12px;
	border:1px solid #ffd7df;
	border-radius:10px;
	background:#fff3f5;
	color:#b4233d;
	font-size:10px;
	line-height:1.45;
}

.gdp-login-alert-warning{
	border-color:#f7d99a;
	background:#fff9eb;
	color:#8a5a00;
}
.gdp-login-alert-warning .gdp-login-alert-icon{
	background:#ffefc7;
}
.gdp-login-alert-locked{
	border-color:#ffc8d1;
	background:#fff0f2;
	color:#b4233d;
}
.gdp-login-retry{
	display:block;
	margin-top:4px;
	font-weight:800;
}

.gdp-login-alert-icon{
	display:flex;
	align-items:center;
	justify-content:center;
	width:20px;
	height:20px;
	flex:0 0 20px;
	border-radius:6px;
	background:#ffe5ea;
	font-weight:900;
}
.gdp-login-form{
	display:grid;
	gap:16px;
}
.gdp-login-field{
	display:grid;
	gap:7px;
	color:#29384f;
	font-size:10px;
	font-weight:750;
}
.gdp-login-input-wrap{
	position:relative;
	display:flex;
	align-items:center;
}
.gdp-login-input-wrap svg{
	position:absolute;
	left:12px;
	width:16px;
	height:16px;
	fill:none;
	stroke:#8a96a8;
	stroke-width:1.8;
	stroke-linecap:round;
	stroke-linejoin:round;
	pointer-events:none;
}
.gdp-login-input-wrap input{
	width:100%;
	height:44px;
	padding:0 13px 0 38px;
	border:1px solid #dbe3ee;
	border-radius:10px;
	outline:0;
	background:#fbfcfe;
	color:#1e2b40;
	font-size:11px;
	transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.gdp-login-input-wrap input::placeholder{
	color:#a3adbc;
}
.gdp-login-input-wrap input:focus{
	border-color:var(--gdp-primary);
	background:#fff;
	box-shadow:0 0 0 3px color-mix(in srgb,var(--gdp-primary) 11%, transparent);
}
.gdp-login-remember{
	display:flex;
	align-items:center;
	gap:8px;
	color:#657287;
	font-size:10px;
	font-weight:550;
	cursor:pointer;
}
.gdp-login-remember input{
	width:15px;
	height:15px;
	margin:0;
	accent-color:var(--gdp-primary);
}
.gdp-login-recovery-row{
	display:flex;
	justify-content:flex-end;
	margin-top:-2px;
}
.gdp-login-recovery{
	display:inline-flex;
	align-items:center;
	gap:6px;
	color:var(--gdp-primary);
	font-size:10px;
	font-weight:750;
	text-decoration:none;
}
.gdp-login-recovery:hover{
	text-decoration:underline;
}
.gdp-login-submit{
	width:100%;
	height:44px;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	margin-top:2px;
	border:1px solid var(--gdp-primary);
	border-radius:10px;
	background:var(--gdp-primary);
	color:#fff;
	font-size:11px;
	font-weight:800;
	cursor:pointer;
	box-shadow:0 7px 18px color-mix(in srgb,var(--gdp-primary) 20%, transparent);
	transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease;
}
.gdp-login-submit svg{
	width:16px;
	height:16px;
	fill:none;
	stroke:currentColor;
	stroke-width:1.9;
	stroke-linecap:round;
	stroke-linejoin:round;
}
.gdp-login-submit:hover{
	transform:translateY(-1px);
	background:color-mix(in srgb,var(--gdp-primary) 88%, #000);
	border-color:color-mix(in srgb,var(--gdp-primary) 88%, #000);
	box-shadow:0 10px 22px color-mix(in srgb,var(--gdp-primary) 25%, transparent);
}
.gdp-login-submit:active{
	transform:translateY(0);
}
.gdp-login-submit:disabled{
	cursor:not-allowed;
	opacity:.58;
	transform:none;
	box-shadow:none;
}
.gdp-login-submit:disabled:hover{
	transform:none;
	background:var(--gdp-primary);
	border-color:var(--gdp-primary);
	box-shadow:none;
}
.gdp-login-footer{
	display:grid;
	gap:2px;
	margin-top:28px;
	padding-top:18px;
	border-top:1px solid #edf1f6;
	color:#8b96a8;
	font-size:9px;
}
.gdp-login-footer span{
	color:#5f6d82;
	font-weight:750;
}
.gdp-login-footer small{
	font-size:8px;
}
.gdp-login-aside{
	position:relative;
	overflow:hidden;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:64px;
	background:
		linear-gradient(145deg,#0d1930,#122547 60%,#162b50);
	color:#fff;
}
.gdp-login-aside:before{
	content:"";
	position:absolute;
	inset:0;
	background:
		linear-gradient(120deg,transparent 0 64%,rgba(255,255,255,.025) 64% 65%,transparent 65% 100%),
		linear-gradient(30deg,transparent 0 74%,rgba(255,255,255,.018) 74% 75%,transparent 75% 100%);
	pointer-events:none;
}
.gdp-login-aside-orb{
	position:absolute;
	border-radius:50%;
	filter:blur(2px);
	opacity:.72;
}
.gdp-login-aside-orb-one{
	width:360px;
	height:360px;
	top:-120px;
	right:-80px;
	background:radial-gradient(circle,color-mix(in srgb,var(--gdp-secondary) 34%, transparent),transparent 68%);
}
.gdp-login-aside-orb-two{
	width:430px;
	height:430px;
	bottom:-190px;
	left:-110px;
	background:radial-gradient(circle,color-mix(in srgb,var(--gdp-primary) 42%, transparent),transparent 68%);
}
.gdp-login-aside-content{
	position:relative;
	z-index:1;
	max-width:520px;
}
.gdp-login-aside-mark{
	display:flex;
	align-items:center;
	justify-content:center;
	width:52px;
	height:52px;
	margin-bottom:24px;
	border-radius:15px;
	background:linear-gradient(135deg,var(--gdp-primary),var(--gdp-secondary));
	color:#fff;
	font-size:14px;
	font-weight:900;
	box-shadow:0 11px 28px rgba(0,0,0,.2);
}
.gdp-login-aside-content > span{
	display:block;
	margin-bottom:8px;
	color:#91a5c8;
	font-size:10px;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.09em;
}
.gdp-login-aside-content h2{
	margin:0;
	max-width:520px;
	font-size:40px;
	line-height:1.08;
	letter-spacing:-.04em;
}
.gdp-login-aside-content p{
	max-width:470px;
	margin:15px 0 0;
	color:#aebbd0;
	font-size:13px;
	line-height:1.65;
}
@media(max-width:980px){
	.gdp-login-shell{
		grid-template-columns:1fr;
		align-items:center;
		justify-items:center;
		padding:30px 18px;
	}
	.gdp-login-panel{
		max-width:480px;
		padding:38px 34px;
		border:1px solid var(--gdp-border);
		border-radius:16px;
		box-shadow:0 18px 50px rgba(15,23,42,.09);
	}
	.gdp-login-aside{
		display:none;
	}
}
@media(max-width:560px){
	.gdp-login-shell{
		padding:18px 12px;
	}
	.gdp-login-panel{
		padding:30px 22px;
		border-radius:14px;
	}
	.gdp-login-logo{
		max-width:185px;
		max-height:64px;
	}
	.gdp-login-copy h1{
		font-size:26px;
	}
}


/* =========================================================
   Theme 2.0.6 — Login invertido
   Painel institucional à esquerda e formulário à direita.
   ========================================================= */
@media(min-width:981px){
	body.gdp-login-v2 .gdp-login-shell{
		grid-template-columns:minmax(420px,1fr) minmax(0,520px);
	}
	body.gdp-login-v2 .gdp-login-aside{
		grid-column:1;
		grid-row:1;
	}
	body.gdp-login-v2 .gdp-login-panel{
		grid-column:2;
		grid-row:1;
		border-right:0;
		border-left:1px solid var(--gdp-border);
		box-shadow:-16px 0 44px rgba(15,23,42,.045);
	}
}


/* Theme 2.0.7 — suporte às subabas financeiras */
.gdp-ui-v2.gdp-page-billing .gdp-content{
	min-width:0;
}


/* =========================================================
   Theme 2.0.8 — escala tipográfica global
   Objetivo: melhorar legibilidade sem perder a densidade SaaS.
   ========================================================= */
:root{
	--gdp-font-2xs:10px;
	--gdp-font-xs:11px;
	--gdp-font-sm:12px;
	--gdp-font-md:13px;
	--gdp-font-base:14px;
	--gdp-font-lg:16px;
	--gdp-font-xl:20px;
	--gdp-font-page:27px;
}

.gdp-ui-v2{
	font-size:var(--gdp-font-base);
}

/* Sidebar */
.gdp-ui-v2 .gdp-brand-logo{
	font-size:20px;
}
.gdp-ui-v2 .gdp-brand-service{
	font-size:10px;
}
.gdp-ui-v2 .gdp-menu-label{
	font-size:10px;
	letter-spacing:.1em;
}
.gdp-ui-v2 .gdp-menu-link{
	font-size:12.5px;
	line-height:1.35;
}
.gdp-ui-v2 .gdp-menu-link{
	min-height:38px;
}

/* Topbar */
.gdp-ui-v2 .gdp-global-search input,
.gdp-ui-v2 .gdp-global-search-static{
	font-size:12px;
}
.gdp-ui-v2 .gdp-search-hint{
	font-size:10px;
}
.gdp-ui-v2 .gdp-user-copy strong{
	font-size:11.5px;
}
.gdp-ui-v2 .gdp-user-copy small{
	font-size:10px;
}
.gdp-ui-v2 .gdp-logout{
	font-size:11px;
}
.gdp-ui-v2 .gdp-topbar-notification>span{
	font-size:9px;
}

/* Login: mantém o layout aprovado, apenas melhora leitura */
body.gdp-login-v2 .gdp-login-service{
	font-size:12px;
}
body.gdp-login-v2 .gdp-login-eyebrow{
	font-size:11px;
}
body.gdp-login-v2 .gdp-login-copy p{
	font-size:13px;
}
body.gdp-login-v2 .gdp-login-alert,
body.gdp-login-v2 .gdp-login-field,
body.gdp-login-v2 .gdp-login-remember{
	font-size:12px;
}
body.gdp-login-v2 .gdp-login-input-wrap input,
body.gdp-login-v2 .gdp-login-submit{
	font-size:13px;
}
body.gdp-login-v2 .gdp-login-footer{
	font-size:10.5px;
}
body.gdp-login-v2 .gdp-login-footer small{
	font-size:10px;
}

@media(max-width:680px){
	.gdp-ui-v2 .gdp-menu-link{
		font-size:13px;
	}
}


/* Theme 2.0.9 — novo módulo financeiro de Planos Comerciais */
.gdp-ui-v2.gdp-page-commercial_plans .gdp-content,
.gdp-ui-v2.gdp-page-collection_rules .gdp-content{
	min-width:0;
}


/* =========================================================
   Theme 2.0.10 — sidebar rolável com scrollbar oculta
   ========================================================= */
.gdp-sidebar{
	scrollbar-width:none;          /* Firefox */
	-ms-overflow-style:none;       /* IE/Edge legado */
	overscroll-behavior:contain;
}
.gdp-sidebar::-webkit-scrollbar{
	width:0;
	height:0;
	display:none;                  /* Chrome, Edge, Safari */
}


/* v2.0.12 — avatar próprio do usuário */
.gdp-topbar .gdp-user-avatar-topbar{
	width:32px;
	height:32px;
	border-radius:50%;
	object-fit:cover;
	flex:0 0 32px;
}
.gdp-topbar .gdp-user-avatar-topbar.gdp-user-avatar-initials{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	background:#eef2ff;
	color:var(--gdp-primary,#3B56CF);
	font-size:10px;
	font-weight:800;
}


/* GD Platform 2FA */
.gdp-2fa-setup{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid #dbe3f0;border-radius:12px;background:#f8faff;font-size:13px;line-height:1.45}.gdp-2fa-setup code{display:block;padding:12px;border-radius:9px;background:#fff;border:1px dashed #9aa9c2;font-size:15px;letter-spacing:2px;word-break:break-all;text-align:center}.gdp-2fa-setup small{color:#667085}.gdp-2fa-back{display:block;text-align:center;margin-top:12px;font-size:13px;text-decoration:none}.gdp-login-field input[name="gdp_2fa_code"]{font-size:22px;font-weight:700;letter-spacing:8px;text-align:center}

/* =========================
   Contratos — Theme v2.0.18
   ========================= */
.gdp-contract-tabs{margin-bottom:16px}
.gdp-contract-toolbar{display:grid;grid-template-columns:minmax(320px,1fr) 190px 260px auto auto;gap:10px;align-items:center}
.gdp-contract-models-card .gdp-card-head,.gdp-contract-detail .gdp-card-head{padding:20px 22px}
.gdp-contract-editor{margin-top:18px;padding:22px}
.gdp-contract-content-label{display:block;margin-top:18px;font-weight:700}
.gdp-contract-content-label textarea{width:100%;margin-top:8px;min-height:360px;resize:vertical;line-height:1.55;font-family:inherit}
.gdp-contract-vars{margin-top:16px;padding:16px;border:1px solid var(--gdp-border,#dce3ef);border-radius:12px;background:#f8faff}
.gdp-contract-vars>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}
.gdp-contract-vars code{padding:6px 8px;border-radius:8px;background:#eef3ff;color:#2948c7;font-size:11px}
.gdp-contract-detail{margin-top:18px;padding-bottom:22px}
.gdp-contract-detail>form{padding:0 22px 20px}
.gdp-contract-snapshot{padding:0 22px 18px}
.gdp-contract-paper{margin-top:12px;padding:34px 40px;max-width:900px;min-height:420px;background:#fff;border:1px solid #dfe5ef;border-radius:12px;box-shadow:0 12px 30px rgba(29,47,88,.06);line-height:1.65;white-space:normal}
.gdp-contract-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:0 22px 20px}
.gdp-contract-actions form{display:flex;gap:8px;align-items:center;margin:0}
.gdp-contract-actions select{min-width:210px}
.gdp-contract-history{margin:0 22px;padding-top:18px;border-top:1px solid #e7ebf2}
.gdp-contract-history-list{display:grid;gap:8px;margin-top:10px}
.gdp-contract-history-list>div{display:flex;justify-content:space-between;gap:18px;padding:11px 13px;border:1px solid #e6eaf2;border-radius:10px;background:#fafbfe}
.gdp-contract-history-list span{color:#73809a;font-size:12px;text-align:right}
.gdp-contract-table td small,.gdp-contract-models-card td small{display:block;color:#8090aa;margin-top:3px}
@media(max-width:1200px){.gdp-contract-toolbar{grid-template-columns:1fr 1fr 1fr auto}.gdp-contract-toolbar .gdp-grow{grid-column:1/-1}}
@media(max-width:780px){.gdp-contract-toolbar{grid-template-columns:1fr}.gdp-contract-toolbar .gdp-grow{grid-column:auto}.gdp-contract-paper{padding:22px 20px}.gdp-contract-history-list>div{flex-direction:column}.gdp-contract-history-list span{text-align:left}}

/* v2.0.19 — Contratos: modelos HTML/PDF e melhor espaçamento */
.gdp-contract-card-head{padding:20px 22px 16px!important}.gdp-contract-list-card .gdp-table-wrap{border-top:1px solid #e7ecf4}.gdp-contract-editor{padding:22px}.gdp-contract-description{display:block;margin:16px 0}.gdp-contract-description textarea{width:100%}.gdp-contract-editor-shell{border:1px solid #dbe3ef;border-radius:14px;overflow:hidden;background:#fff;margin-top:16px}.gdp-contract-editor-tabs,.gdp-contract-editor-toolbar{display:flex;gap:8px;padding:10px 12px;border-bottom:1px solid #e7ecf4;background:#f8faff}.gdp-contract-editor-tabs button,.gdp-contract-editor-toolbar button,.gdp-contract-vars button{border:1px solid #dbe3ef;background:#fff;border-radius:8px;padding:7px 10px;cursor:pointer}.gdp-contract-editor-tabs button.is-active{background:var(--gdp-primary);color:#fff;border-color:var(--gdp-primary)}.gdp-contract-visual,.gdp-contract-html,.gdp-contract-preview{min-height:380px;width:100%;padding:24px;border:0;outline:none;box-sizing:border-box}.gdp-contract-html{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;resize:vertical}.gdp-contract-preview{background:#f7f9fc}.gdp-contract-vars{margin:14px 0}.gdp-contract-vars>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.gdp-contract-vars button{padding:5px 8px}.gdp-contract-pdf-upload,.gdp-contract-specific-upload,.gdp-contract-source-summary{border:1px dashed #ccd7e8;border-radius:12px;padding:16px;margin:16px 0;background:#fbfcff}.gdp-contract-source-summary{display:flex;justify-content:space-between;gap:16px;align-items:center}.gdp-plan-contract-links{margin-top:10px;padding-top:14px;border-top:1px solid #e7ecf4}.gdp-contract-paper h1,.gdp-contract-paper h2,.gdp-contract-paper h3{color:#13213a}.gdp-contract-paper p{line-height:1.65}.gdp-contract-models-card .gdp-card-head{padding:20px 22px 16px}.gdp-contract-models-card .gdp-table-wrap{border-top:1px solid #e7ecf4}
@media(max-width:760px){.gdp-contract-card-head,.gdp-contract-models-card .gdp-card-head{padding:16px!important}.gdp-contract-editor{padding:16px}.gdp-contract-source-summary{align-items:flex-start;flex-direction:column}.gdp-contract-visual,.gdp-contract-html,.gdp-contract-preview{padding:16px;min-height:300px}}

.gdp-contract-tabs{display:flex;gap:8px;align-items:center}.gdp-contract-tabs .gdp-rule-tab{display:inline-flex;align-items:center}

/* =========================================================
   Theme 2.0.20 — Novo contrato: grid, espaçamento e limpeza
   ========================================================= */
.gdp-contract-detail > .gdp-card-head{
	padding:22px 24px 18px;
}
.gdp-contract-detail > form[data-contract-create-form]{
	padding:0 24px 24px;
}
.gdp-contract-create-section{
	display:flex;
	flex-direction:column;
	gap:18px;
}
.gdp-contract-create-grid{
	display:grid;
	gap:16px;
	align-items:end;
}
.gdp-contract-create-grid-primary{
	grid-template-columns:minmax(280px,1.35fr) minmax(240px,.95fr) minmax(240px,.9fr);
}
.gdp-contract-create-grid-dates{
	grid-template-columns:minmax(170px,.8fr) minmax(150px,.65fr) minmax(190px,.85fr) minmax(250px,1.25fr);
}
.gdp-contract-field{
	display:flex;
	flex-direction:column;
	gap:7px;
	min-width:0;
	font-weight:700;
}
.gdp-contract-field > span{
	display:block;
	font-size:12px;
	line-height:1.35;
	color:var(--gdp-text);
}
.gdp-contract-field select,
.gdp-contract-field input,
.gdp-contract-field textarea{
	width:100%;
	min-width:0;
}
.gdp-contract-field small{
	display:block;
	margin-top:2px;
	font-weight:400;
	color:var(--gdp-muted);
}
.gdp-contract-source-summary{
	margin:0;
	padding:16px 18px;
}
.gdp-contract-conditional{
	padding:16px 18px;
	border:1px solid var(--gdp-border,#dce3ef);
	border-radius:12px;
	background:#fbfcff;
}
.gdp-contract-specific-upload{
	margin:0;
}
.gdp-contract-create-actions{
	margin-top:2px;
	padding-top:18px;
	border-top:1px solid #e7ecf4;
}
@media(max-width:1180px){
	.gdp-contract-create-grid-primary{grid-template-columns:1fr 1fr}
	.gdp-contract-create-grid-primary .gdp-contract-field:last-child{grid-column:1/-1}
	.gdp-contract-create-grid-dates{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
	.gdp-contract-detail > .gdp-card-head{padding:18px 16px 14px}
	.gdp-contract-detail > form[data-contract-create-form]{padding:0 16px 18px}
	.gdp-contract-create-section{gap:14px}
	.gdp-contract-create-grid-primary,
	.gdp-contract-create-grid-dates{grid-template-columns:1fr}
	.gdp-contract-create-grid-primary .gdp-contract-field:last-child{grid-column:auto}
	.gdp-contract-create-actions{display:flex;flex-direction:column;align-items:stretch}
	.gdp-contract-create-actions .gdp-btn{width:100%;justify-content:center}
}


/* =========================================================
   Theme 2.0.23 — Contratos: navegação padronizada com Rateios
   ========================================================= */
.gdp-contract-tabs{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:8px;
	margin:14px 0 18px;
	padding:0;
	border:0;
	background:transparent;
}
.gdp-contract-tabs .gdp-rule-tab{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	min-height:40px;
	padding:9px 14px;
	border:1px solid #dbe3ef;
	border-radius:10px;
	background:#fff;
	color:#33415b;
	font-size:12px;
	font-weight:750;
	line-height:1;
	text-decoration:none;
	box-shadow:0 2px 7px rgba(20,33,56,.025);
	transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease,color .16s ease;
}
.gdp-contract-tabs .gdp-rule-tab:hover{
	transform:translateY(-1px);
	border-color:color-mix(in srgb,var(--gdp-primary,#3B56CF) 45%, #dbe3ef);
	background:color-mix(in srgb,var(--gdp-primary,#3B56CF) 4%, #fff);
	color:var(--gdp-primary,#3B56CF);
	box-shadow:0 6px 14px rgba(22,38,66,.07);
}
.gdp-contract-tabs .gdp-rule-tab.is-active{
	border-color:var(--gdp-primary,#3B56CF);
	background:var(--gdp-primary,#3B56CF);
	color:#fff;
	box-shadow:0 6px 15px color-mix(in srgb,var(--gdp-primary,#3B56CF) 20%, transparent);
}
.gdp-contract-tabs .gdp-rule-tab-icon{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:19px;
	height:19px;
	flex:0 0 19px;
	border-radius:6px;
	background:#eef2f7;
	color:#66758c;
	font-size:9px;
	font-weight:900;
}
.gdp-contract-tabs .gdp-rule-tab.is-active .gdp-rule-tab-icon{
	background:rgba(255,255,255,.18);
	color:#fff;
}
@media(max-width:760px){
	.gdp-contract-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px}
	.gdp-contract-tabs .gdp-rule-tab{flex:0 0 auto}
}


.gdp-contract-docx-upload{border:1px dashed #ccd7e8;border-radius:12px;padding:16px;margin:16px 0;background:#fbfcff}.gdp-contract-docx-upload>input[type=file]{margin-top:12px}.gdp-contract-docx-note{margin-top:14px;padding:12px 14px;border-radius:10px;background:#f4f7ff;border:1px solid #dbe5ff}.gdp-contract-docx-note p{margin:5px 0 0}.gdp-contract-var-chip{display:inline-flex;align-items:center;border:1px solid #dbe3ef;background:#fff;border-radius:8px;padding:6px 9px;color:#2d4bd6}.gdp-contract-docx-vars>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}

/* =========================================================
   Theme 2.0.25 — Novo contrato refinado
   ========================================================= */
.gdp-contract-detail{overflow:hidden}
.gdp-contract-detail > .gdp-card-head{padding:24px 28px 20px;border-bottom:1px solid #e7ecf4}
.gdp-contract-detail > form[data-contract-create-form]{padding:22px 28px 26px}
.gdp-contract-create-section{gap:16px}
.gdp-contract-form-block{border:1px solid #dbe3ef;border-radius:14px;background:#fff;padding:18px}
.gdp-contract-block-head{display:flex;align-items:flex-start;gap:11px;margin-bottom:16px}
.gdp-contract-block-head>div{display:flex;flex-direction:column;gap:3px}
.gdp-contract-block-head strong{font-size:13px;color:var(--gdp-text,#13213a)}
.gdp-contract-block-head small{font-size:11px;color:var(--gdp-muted,#71809c);font-weight:400}
.gdp-contract-step{width:25px;height:25px;flex:0 0 25px;border-radius:8px;background:var(--gdp-primary,#3b56cf);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;box-shadow:0 5px 12px rgba(59,86,207,.18)}
.gdp-contract-create-grid{align-items:start}
.gdp-contract-create-grid-link{grid-template-columns:minmax(360px,1.3fr) minmax(300px,1fr)}
.gdp-contract-create-grid-document{grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);align-items:stretch}
.gdp-contract-create-grid-dates{grid-template-columns:minmax(170px,.75fr) minmax(140px,.55fr) minmax(180px,.75fr) minmax(280px,1.25fr)}
.gdp-contract-field{display:flex;flex-direction:column;gap:7px;min-width:0;font-weight:700}
.gdp-contract-field>span{font-size:12px;line-height:1.3;color:#24324a}
.gdp-contract-field select,.gdp-contract-field input[type="text"],.gdp-contract-field input[type="number"],.gdp-contract-field input[type="date"],.gdp-contract-field input[type="file"]{width:100%;min-height:42px;border:1px solid #cfd9e8;border-radius:9px;background:#fff;color:#16233a;padding:9px 12px;font:inherit;font-size:12px;outline:none;box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease}
.gdp-contract-field select:focus,.gdp-contract-field input:focus{border-color:var(--gdp-primary,#3b56cf);box-shadow:0 0 0 3px rgba(59,86,207,.10)}
.gdp-contract-field small{font-size:10.5px;line-height:1.4;color:#71809c;font-weight:400}
.gdp-contract-source-summary{margin:0;padding:13px 15px;border:1px solid #dbe3ef;border-radius:10px;background:#f8faff;display:flex;justify-content:flex-start;align-items:center;gap:11px;min-height:42px}
.gdp-contract-source-summary.is-ok{border-color:#bfe8d2;background:#f1fbf6}
.gdp-contract-source-summary.is-warning{border-color:#f0d7a8;background:#fffaf0}
.gdp-contract-source-summary .gdp-contract-summary-icon{width:28px;height:28px;border-radius:8px;background:#e9eeff;color:var(--gdp-primary,#3b56cf);display:flex;align-items:center;justify-content:center;flex:0 0 28px;font-weight:800}
.gdp-contract-source-summary>div:last-child{display:flex;flex-direction:column;gap:2px;min-width:0}
.gdp-contract-source-summary strong{font-size:11px;color:#24324a}
.gdp-contract-source-summary span{font-size:11px;color:#66758f;white-space:normal}
.gdp-contract-source-summary.is-ok strong{color:#087a42}
.gdp-contract-conditional,.gdp-contract-specific-upload{margin-top:14px;padding:14px 15px;border:1px dashed #cbd6e7;border-radius:10px;background:#fbfcff}
.gdp-contract-create-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:2px;padding-top:18px;border-top:1px solid #e7ecf4}
.gdp-contract-create-actions .gdp-btn{min-width:118px;justify-content:center}
@media(max-width:1180px){.gdp-contract-create-grid-link,.gdp-contract-create-grid-document{grid-template-columns:1fr}.gdp-contract-create-grid-dates{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.gdp-contract-detail>.gdp-card-head{padding:18px 16px 14px}.gdp-contract-detail>form[data-contract-create-form]{padding:16px}.gdp-contract-form-block{padding:14px}.gdp-contract-create-grid-link,.gdp-contract-create-grid-document,.gdp-contract-create-grid-dates{grid-template-columns:1fr}.gdp-contract-create-actions{flex-direction:column-reverse;align-items:stretch}.gdp-contract-create-actions .gdp-btn{width:100%;justify-content:center}}

/* Contracts 2.0.27 - isolated document snapshot preview */
.gdp-contract-document-frame{display:block;width:100%;min-height:980px;border:1px solid #dbe3ef;border-radius:14px;background:#fff}.gdp-contract-snapshot{padding:0 22px 22px}.gdp-contract-snapshot .gdp-subtitle{margin-bottom:10px}
@media(max-width:760px){.gdp-contract-document-frame{min-height:760px;border-radius:10px}.gdp-contract-snapshot{padding:0 16px 18px}}

/* Contracts 2.0.29 */
.gdp-contract-actions .gdp-btn.danger{background:#fff;color:#c62828;border:1px solid #efb4b4;box-shadow:none}.gdp-contract-actions .gdp-btn.danger:hover{background:#fff5f5;border-color:#dc2626;color:#b91c1c}
.gdp-action-button-link{appearance:none;background:none;border:0;padding:0;font:inherit;cursor:pointer}.gdp-action-button-link.danger{color:#d92d20}.gdp-action-button-link.danger:hover{text-decoration:underline}


/* Contratos 2.0.33 — histórico compacto */
.gdp-contract-history{margin:0 22px 18px;padding-top:12px;border-top:1px solid #e7ebf2}
.gdp-contract-history>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;padding:7px 2px;color:#10213d}
.gdp-contract-history>summary::-webkit-details-marker{display:none}
.gdp-contract-history>summary:after{content:'▾';font-size:12px;color:#6f7b93;transition:transform .18s ease}
.gdp-contract-history[open]>summary:after{transform:rotate(180deg)}
.gdp-contract-history-count{margin-left:auto;font-size:11px;font-weight:700;color:#6f7b93;background:#f2f5fa;border-radius:999px;padding:4px 8px}
.gdp-contract-history-list{display:grid;gap:5px;margin-top:7px}
.gdp-contract-history-list>div{padding:7px 10px;border-radius:8px;min-height:34px}
.gdp-contract-history-list strong{font-size:12px}
.gdp-contract-history-list span{font-size:11px}
.gdp-contract-history-empty{padding:8px 2px}

/* Contracts 2.0.33 — actions and navigation */
.gdp-contract-row-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.gdp-contract-row-action-form{display:inline-flex;margin:0}
.gdp-action-button{appearance:none;border:0;background:transparent;padding:0;font:inherit;cursor:pointer}
.gdp-action-button.danger{color:#dc2626}
.gdp-action-button.danger:hover{color:#b91c1c}
.gdp-contract-back-btn{white-space:nowrap}
@media (max-width:720px){.gdp-contract-row-actions{gap:8px}.gdp-contract-back-btn{width:auto}}

.gdp-contract-official-pdf{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;margin:16px 0;border:1px solid #dbe3ef;border-radius:12px;background:#fbfcff}.gdp-contract-official-pdf p{margin:4px 0 0}.gdp-contract-official-pdf form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.gdp-contract-official-pdf input[type=file]{max-width:300px}

/* Contratos 2.0.40 — assinatura eletrônica */
.gdp-contract-signature-card{margin-top:18px;padding:18px;border:1px solid var(--gdp-border);border-radius:14px;background:#fff}
.gdp-contract-signature-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.gdp-contract-signature-head p{margin:4px 0 0}
.gdp-contract-signature-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0 16px}
.gdp-contract-signature-meta span{display:block;padding:11px 12px;border-radius:10px;background:#f7f9fc;font-size:12px;color:var(--gdp-muted)}
.gdp-contract-signature-meta b{display:block;margin-bottom:4px;color:var(--gdp-text)}
.gdp-signature-review-box{margin:14px 0;padding:14px;border-radius:12px;background:#f8faff;border:1px solid #dfe6f2}
.gdp-signature-evidence-links,.gdp-signature-review-actions,.gdp-signature-final{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.gdp-signature-evidence-links{margin:10px 0 14px}
.gdp-signature-review-box label{display:block;margin-top:12px}
.gdp-signature-review-box textarea{width:100%;margin-top:6px}
.gdp-signature-review-actions{margin-top:12px}
.gdp-signature-final{justify-content:space-between;padding:12px 0 4px}
.gdp-signature-final div{min-width:260px;flex:1}
.gdp-signature-final small{display:block;margin-top:4px;color:var(--gdp-muted);word-break:break-all}
@media(max-width:1100px) and (min-width:761px){.gdp-contract-signature-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.gdp-contract-signature-head{flex-direction:column}.gdp-contract-signature-meta{grid-template-columns:1fr}.gdp-signature-final{align-items:stretch}.gdp-signature-final .gdp-btn{width:100%;justify-content:center}}

/* Contratos 2.0.40 — painel operacional simplificado */
.gdp-contract-work-kpis{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:12px;
	margin:0 0 14px;
}
.gdp-contract-work-card{
	display:flex;
	flex-direction:column;
	justify-content:center;
	min-height:104px;
	padding:16px 18px;
	border:1px solid var(--gdp-border);
	border-radius:14px;
	background:#fff;
	box-shadow:0 7px 24px rgba(25,42,76,.035);
	transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.gdp-contract-work-card:hover{border-color:#c7d2ec;box-shadow:0 10px 28px rgba(25,42,76,.07);transform:translateY(-1px)}
.gdp-contract-work-card.is-active{border-color:var(--gdp-primary);box-shadow:0 0 0 3px rgba(59,86,207,.08)}
.gdp-contract-work-card span{font-size:11.5px;font-weight:700;color:#66758f}
.gdp-contract-work-card b{margin-top:5px;font-size:26px;line-height:1;color:#101f38}
.gdp-contract-work-card small{margin-top:7px;font-size:10.5px;color:#8a96aa}
.gdp-contract-work-card-attention b{color:#a55b00}
.gdp-contract-work-card-attention.is-active{border-color:#e5b461;box-shadow:0 0 0 3px rgba(229,180,97,.12)}
.gdp-contract-toolbar-simple{grid-template-columns:minmax(280px,1fr) 170px 240px auto auto;margin-bottom:14px}
.gdp-contract-list-card-simple{overflow:visible}
.gdp-contract-table-simple th:nth-child(1){width:155px}
.gdp-contract-table-simple th:nth-child(2){width:230px}
.gdp-contract-table-simple th:nth-child(4){width:150px}
.gdp-contract-table-simple th:nth-child(5){width:170px}
.gdp-contract-table-simple th:nth-child(6){width:230px}
.gdp-contract-row-actions-simple{flex-wrap:nowrap;position:relative}
.gdp-btn.gdp-btn-sm{min-height:34px;padding:7px 11px;border-radius:8px;font-size:11px;white-space:nowrap}
.gdp-contract-more{position:relative;display:inline-flex}
.gdp-contract-more>summary{
	list-style:none;
	width:34px;
	height:34px;
	display:flex;
	align-items:center;
	justify-content:center;
	border:1px solid #d7dfeb;
	border-radius:8px;
	background:#fff;
	color:#53627b;
	font-size:19px;
	line-height:1;
	cursor:pointer;
	user-select:none;
}
.gdp-contract-more>summary::-webkit-details-marker{display:none}
.gdp-contract-more[open]>summary{border-color:#bfcbe2;background:#f7f9fd;color:#233a87}
.gdp-contract-more-menu{
	position:absolute;
	right:0;
	top:40px;
	z-index:50;
	min-width:205px;
	padding:6px;
	border:1px solid #dce3ee;
	border-radius:11px;
	background:#fff;
	box-shadow:0 16px 40px rgba(20,34,60,.14);
}
.gdp-contract-more-menu>a,.gdp-contract-more-menu form>button{
	display:block;
	width:100%;
	padding:9px 10px;
	border:0;
	border-radius:7px;
	background:transparent;
	color:#27364f;
	font:inherit;
	font-size:11.5px;
	text-align:left;
	cursor:pointer;
}
.gdp-contract-more-menu>a:hover,.gdp-contract-more-menu form>button:hover{background:#f3f6fb;color:#1f3aa8}
.gdp-contract-more-menu form{display:block;margin:0}
.gdp-contract-more-menu form>button.danger{color:#c62828}
.gdp-contract-more-menu form>button.danger:hover{background:#fff3f3;color:#b91c1c}
.gdp-contract-detail{margin-top:0}
#gdp-contract-signature{scroll-margin-top:22px}
@media(max-width:1180px){
	.gdp-contract-work-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
	.gdp-contract-toolbar-simple{grid-template-columns:1fr 1fr 1fr auto}
	.gdp-contract-toolbar-simple .gdp-grow{grid-column:1/-1}
}
@media(max-width:720px){
	.gdp-contract-work-kpis{grid-template-columns:1fr 1fr;gap:9px}
	.gdp-contract-work-card{min-height:92px;padding:13px}
	.gdp-contract-work-card b{font-size:23px}
	.gdp-contract-toolbar-simple{grid-template-columns:1fr}
	.gdp-contract-toolbar-simple .gdp-grow{grid-column:auto}
	.gdp-contract-row-actions-simple{gap:6px}
}
@media(max-width:480px){.gdp-contract-work-kpis{grid-template-columns:1fr}}
@media(min-width:901px){.gdp-contract-list-card-simple .gdp-table-wrap{overflow:visible}}

/* Contracts 2.0.42 — action menu outside the scroll container */
.gdp-contract-menu-separator{height:1px;margin:5px 4px;background:#edf1f6}
.gdp-contract-more-menu.is-floating{position:fixed!important;top:auto;right:auto;z-index:100000;display:block;min-width:215px;max-width:min(260px,calc(100vw - 24px))}

/* Contracts 2.0.43 — focused signature workflow and visual evidence review */
.gdp-contract-detail-signature-focus .gdp-contract-snapshot,
.gdp-contract-detail-signature-focus .gdp-contract-official-pdf,
.gdp-contract-detail-signature-focus .gdp-contract-actions,
.gdp-contract-detail-signature-focus .gdp-contract-history,
.gdp-contract-detail-review-focus .gdp-contract-snapshot,
.gdp-contract-detail-review-focus .gdp-contract-official-pdf,
.gdp-contract-detail-review-focus .gdp-contract-actions,
.gdp-contract-detail-review-focus .gdp-contract-history{display:none!important}
.gdp-contract-detail-signature-focus .gdp-contract-signature-card,
.gdp-contract-detail-review-focus .gdp-contract-signature-card{margin:0 22px 22px}
.gdp-contract-detail-review-focus .gdp-contract-signature-head,
.gdp-contract-detail-review-focus .gdp-contract-signature-meta,
.gdp-contract-detail-review-focus .gdp-contract-signature-card>form{display:none!important}
.gdp-contract-detail-review-focus .gdp-signature-review-box{margin:0;padding:0;border:0;background:transparent}
.gdp-signature-review-help{margin:5px 0 14px}
.gdp-signature-evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:12px 0 20px}
.gdp-signature-evidence-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #dbe3ef;border-radius:13px;background:#fff;box-shadow:0 6px 18px rgba(25,42,76,.045);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.gdp-signature-evidence-card:hover{border-color:#bdc9e1;box-shadow:0 10px 26px rgba(25,42,76,.09);transform:translateY(-1px)}
.gdp-signature-evidence-image{display:flex;align-items:center;justify-content:center;height:300px;padding:12px;background:#f5f7fb;border-bottom:1px solid #e7ecf4;overflow:hidden}
.gdp-signature-evidence-image img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:7px}
.gdp-signature-evidence-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;color:#172640}
.gdp-signature-evidence-caption strong{font-size:12px}
.gdp-signature-evidence-caption small{font-size:10.5px;color:#6f7d94;white-space:nowrap}
.gdp-contract-detail-review-focus .gdp-signature-review-box>form{margin-top:6px;padding-top:16px;border-top:1px solid #e5eaf2}
@media(max-width:760px){
 .gdp-contract-detail-signature-focus .gdp-contract-signature-card,.gdp-contract-detail-review-focus .gdp-contract-signature-card{margin:0 14px 16px;padding:14px}
 .gdp-signature-evidence-grid{grid-template-columns:1fr;gap:11px}
 .gdp-signature-evidence-image{height:260px}
 .gdp-signature-evidence-caption{align-items:flex-start;flex-direction:column;gap:3px}
}


/* v2.0.48 — remoção controlada de contratos assinados */
.gdp-contract-remove-signed-form{padding:8px 10px 10px!important;border-top:0!important}
.gdp-contract-remove-signed-form label{display:block;margin:0 0 7px;font-size:11px;font-weight:700;color:#475569}
.gdp-contract-remove-signed-form label span{display:block;margin-bottom:5px}
.gdp-contract-remove-signed-form textarea{width:100%;min-width:210px;min-height:56px;resize:vertical;border:1px solid #d8e0ee;border-radius:8px;padding:8px;font:inherit;color:#17223b;background:#fff;box-sizing:border-box}
.gdp-contract-remove-signed-form>button{width:100%;text-align:left}
.gdp-contract-remove-signed-detail{display:grid;gap:8px;min-width:min(420px,100%)}
.gdp-contract-remove-signed-detail label{display:grid;gap:6px;font-weight:700;color:#22314d}
.gdp-contract-remove-signed-detail textarea{width:100%;min-height:70px;resize:vertical;border:1px solid #d8e0ee;border-radius:10px;padding:10px;font:inherit;box-sizing:border-box}


/* =========================================================
   GD Platform Theme 2.0.51 — integração do canal PAP
   ========================================================= */
/* O conteúdo funcional do PAP permanece no Core. O tema cuida apenas
   do shell/navegação e de pequenos ajustes para uso em campo. */
.gdp-page-pap .gdp-content{
	min-width:0;
}
.gdp-page-pap .gdp-main{
	min-width:0;
}
@media(max-width:980px){
	.gdp-page-pap .gdp-topbar{
		position:sticky;
		top:0;
		z-index:20;
	}
}
@media(max-width:680px){
	.gdp-page-pap .gdp-content{
		padding-top:12px;
	}
}


/* =========================================================
   GD Platform Theme 2.0.55 — PWA / instalação resiliente
   ========================================================= */
.gdp-topbar-install{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:7px;
	min-height:36px;
	padding:7px 11px;
	border:1px solid #dce3ee;
	border-radius:10px;
	background:#fff;
	color:var(--gdp-primary);
	font:inherit;
	font-size:11px;
	font-weight:800;
	cursor:pointer;
	box-shadow:0 4px 12px rgba(23,38,68,.04);
}
.gdp-topbar-install[hidden]{display:none!important}
.gdp-topbar-install svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.gdp-topbar-install:hover{background:#f7f9ff;border-color:#c9d3eb}
.gdp-pwa-guide{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:18px}
.gdp-pwa-guide-backdrop{position:absolute;inset:0;background:rgba(10,20,40,.48);backdrop-filter:blur(3px)}
.gdp-pwa-guide-card{position:relative;z-index:1;width:min(430px,100%);padding:26px;border:1px solid #dfe5ef;border-radius:18px;background:#fff;box-shadow:0 28px 70px rgba(10,20,40,.22);text-align:center}
.gdp-pwa-guide-card h3{margin:7px 0 8px;font-size:20px}
.gdp-pwa-guide-card p{margin:0;color:#68778f;line-height:1.55}
.gdp-pwa-guide-icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 8px;border-radius:15px;background:color-mix(in srgb,var(--gdp-primary) 10%,#fff);color:var(--gdp-primary);font-size:24px;font-weight:900}
.gdp-pwa-guide-close{position:absolute;right:12px;top:10px;width:34px;height:34px;border:0;background:transparent;color:#718096;font-size:25px;line-height:1;cursor:pointer}
.gdp-pwa-guide-ok{margin-top:18px}
@media(max-width:760px){
	.gdp-topbar-install{width:36px;height:36px;padding:0}
	.gdp-topbar-install span{display:none}
}
@media(display-mode:standalone){
	.gdp-topbar-install{display:none!important}
	html,body{min-height:100%;min-height:100dvh}
	.gdp-sidebar{padding-top:calc(18px + env(safe-area-inset-top));padding-bottom:calc(22px + env(safe-area-inset-bottom))}
	.gdp-topbar{padding-top:max(0px,env(safe-area-inset-top));padding-right:max(0px,env(safe-area-inset-right))}
	.gdp-content{padding-bottom:calc(24px + env(safe-area-inset-bottom))}
}
