.itpc-portal {
	--itpc-blue: #1769aa;
	--itpc-blue-dark: #0e3157;
	--itpc-blue-deep: #092542;
	--itpc-cyan: #2f9bd3;
	--itpc-teal: #0e8b8d;
	--itpc-gold: #efb735;
	--itpc-green: #17865a;
	--itpc-red: #b53b38;
	--itpc-surface: #ffffff;
	--itpc-canvas: #f4f7fb;
	--itpc-border: #d8e2ed;
	--itpc-text: #172b43;
	--itpc-muted: #617287;
	width: min(1240px, calc(100% - 32px));
	margin: 12px auto 52px;
	color: var(--itpc-text);
	font-family: inherit;
	font-size: 15px;
	line-height: 1.55;
}

.itpc-portal *, .itpc-portal *::before, .itpc-portal *::after { box-sizing: border-box; }
.itpc-portal h1, .itpc-portal h2, .itpc-portal h3, .itpc-portal h4, .itpc-portal p { color: inherit; }
.itpc-portal a { color: var(--itpc-blue); }
.itpc-portal :focus-visible { outline: 3px solid rgba(47,155,211,.32); outline-offset: 2px; }

.itpc-portal__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 18px;
	padding: 22px 26px;
	border: 1px solid var(--itpc-border);
	border-top: 4px solid var(--itpc-blue);
	border-radius: 20px;
	background: linear-gradient(120deg,#fff 0%,#f7fbff 72%,#edf7fc 100%);
	box-shadow: 0 14px 38px rgba(14,49,87,.09);
}

.itpc-brand-lockup, .itpc-header-actions, .itpc-card-top, .itpc-section-heading, .itpc-project-title, .itpc-button-row { display: flex; align-items: center; }
.itpc-brand-lockup { gap: 14px; }
.itpc-brand-symbol, .itpc-login__mark {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 52px;
	height: 52px;
	border-radius: 16px;
	background: linear-gradient(145deg,var(--itpc-blue),var(--itpc-cyan));
	color: #fff;
	font-size: 18px;
	font-weight: 850;
	letter-spacing: -.04em;
	box-shadow: 0 9px 22px rgba(23,105,170,.25);
}

.itpc-portal__header h1 { margin: 2px 0 1px; font-size: clamp(25px,3vw,34px); line-height: 1.1; }
.itpc-eyebrow { margin: 0 !important; color: var(--itpc-blue) !important; font-size: 11px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.itpc-organization-name { margin: 3px 0 0 !important; color: var(--itpc-muted) !important; font-size: 15px; }
.itpc-header-actions { flex-wrap: wrap; justify-content: flex-end; gap: 14px; }
.itpc-logout { font-weight: 700; text-decoration: none; }

.itpc-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	padding: 10px 17px;
	border: 1px solid var(--itpc-blue) !important;
	border-radius: 11px;
	background: #fff;
	color: var(--itpc-blue-dark) !important;
	font: inherit;
	font-weight: 750;
	line-height: 1.2;
	text-decoration: none !important;
	cursor: pointer;
	transition: transform .18s ease,box-shadow .18s ease,background .18s ease;
}
.itpc-button:hover { transform: translateY(-1px); box-shadow: 0 8px 20px rgba(14,49,87,.14); }
.itpc-button--primary { border-color: var(--itpc-blue) !important; background: linear-gradient(135deg,var(--itpc-blue),#14598f); color: #fff !important; }
.itpc-button--accent { border-color: #069860 !important; background: linear-gradient(135deg,#08a869,#078c59); color: #fff !important; box-shadow: 0 8px 20px rgba(8,168,105,.18); }
.itpc-button--small { min-height: 34px; padding: 7px 12px; font-size: 13px; }

.itpc-preview-banner, .itpc-alert {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin: 0 0 16px;
	padding: 14px 17px;
	border: 1px solid #e3be53;
	border-left: 5px solid var(--itpc-gold);
	border-radius: 13px;
	background: #fff9e8;
}
.itpc-preview-banner div { display: grid; }
.itpc-preview-banner span { color: var(--itpc-muted); }
.itpc-alert--info { border-color: #b9d8ed; border-left-color: var(--itpc-blue); background: #f1f8fd; }
.itpc-alert--success { border-color: #b9e3d1; border-left-color: var(--itpc-green); background: #edf9f4; }
.itpc-alert--warning { border-color: #ead18a; border-left-color: var(--itpc-gold); background: #fffaf0; }
.itpc-alert--danger { border-color: #ebc4c2; border-left-color: var(--itpc-red); background: #fff3f2; }

.itpc-organization-switcher { display: flex; align-items: center; gap: 12px; margin: 0 0 18px; padding: 13px 18px; border: 1px solid var(--itpc-border); border-radius: 14px; background: #fff; }
.itpc-organization-switcher label { font-weight: 750; }
.itpc-organization-switcher select { min-width: min(360px,100%); min-height: 40px; padding: 7px 35px 7px 11px; border: 1px solid var(--itpc-border); border-radius: 9px; background: #fff; }

.itpc-layout { display: grid; grid-template-columns: 238px minmax(0,1fr); gap: 24px; align-items: start; }
.itpc-sidebar {
	position: sticky;
	top: 24px;
	padding: 14px;
	border: 1px solid var(--itpc-border);
	border-left: 4px solid var(--itpc-blue);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 12px 30px rgba(14,49,87,.08);
}
.itpc-sidebar__title { margin: 5px 9px 12px !important; color: var(--itpc-muted) !important; font-size: 10px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.itpc-sidebar > a {
	display: grid;
	grid-template-columns: 33px minmax(0,1fr) auto;
	align-items: center;
	gap: 9px;
	margin: 7px 0;
	padding: 11px;
	border: 1px solid transparent;
	border-radius: 12px;
	background: #f7f9fc;
	color: var(--itpc-blue-dark) !important;
	text-decoration: none !important;
	transition: background .18s ease,transform .18s ease;
}
.itpc-sidebar > a:hover { transform: translateX(2px); background: #edf5fb; }
.itpc-sidebar > a > span:nth-child(2) { display: grid; }
.itpc-sidebar strong { font-size: 14px; }
.itpc-sidebar small { color: var(--itpc-muted); font-size: 11px; }
.itpc-nav-icon { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 9px; background: #e8f2fb; color: var(--itpc-blue); font-size: 17px; font-weight: 800; }
.itpc-sidebar > a.is-active { border-color: var(--itpc-blue-dark); background: linear-gradient(135deg,var(--itpc-blue-dark),#174f80); color: #fff !important; box-shadow: 0 8px 18px rgba(14,49,87,.22); }
.itpc-sidebar > a.is-active .itpc-nav-icon { background: rgba(255,255,255,.15); color: #fff; }
.itpc-sidebar > a.is-active small { color: #dbeaf6; }
.itpc-sidebar em { display: grid; place-items: center; min-width: 22px; height: 22px; padding: 0 5px; border-radius: 999px; background: var(--itpc-gold); color: #412d00; font-size: 11px; font-style: normal; font-weight: 800; }
.itpc-sidebar__cta { margin-top: 16px; padding: 15px; border: 1px solid #c7e2f2; border-radius: 13px; background: linear-gradient(145deg,#f0f8fd,#eefaf8); }
.itpc-sidebar__cta p { margin: 5px 0 8px; color: var(--itpc-muted) !important; font-size: 12px; }
.itpc-sidebar__cta a { font-size: 12px; font-weight: 800; text-decoration: none; }

.itpc-content { min-width: 0; padding: 2px 0; }
.itpc-page-title { margin: 4px 0 23px; }
.itpc-page-title h2, .itpc-project-title h2 { margin: 5px 0; font-size: clamp(28px,4vw,40px); line-height: 1.12; }
.itpc-page-title p:last-child, .itpc-project-title p { margin: 5px 0 0; color: var(--itpc-muted) !important; }
.itpc-welcome { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 23px 25px; border: 1px solid var(--itpc-border); border-left: 5px solid var(--itpc-cyan); border-radius: 18px; background: linear-gradient(120deg,#fff,#f4faff); box-shadow: 0 10px 28px rgba(14,49,87,.065); }
.itpc-welcome h2 { margin: 4px 0; font-size: clamp(27px,4vw,38px); }
.itpc-welcome p:last-child { margin: 3px 0 0; color: var(--itpc-muted) !important; }
.itpc-welcome__date { padding: 7px 11px; border-radius: 999px; background: #eaf3fb; color: var(--itpc-blue-dark); font-size: 12px; font-weight: 750; white-space: nowrap; }

.itpc-metric-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 13px; margin: 18px 0 30px; }
.itpc-metric-card, .itpc-info-card, .itpc-list-card, .itpc-panel-card, .itpc-form-card, .itpc-current-stage, .itpc-table-wrap {
	border: 1px solid var(--itpc-border);
	border-radius: 17px;
	background: #fff;
	box-shadow: 0 9px 26px rgba(14,49,87,.065);
}
.itpc-metric-card { position: relative; display: grid; min-height: 138px; align-content: center; padding: 19px; overflow: hidden; color: var(--itpc-text) !important; text-decoration: none !important; }
.itpc-metric-card::before { position: absolute; inset: 0 auto 0 0; width: 4px; content: ''; background: var(--card-color,var(--itpc-blue)); }
.itpc-metric-card::after { position: absolute; right: -25px; bottom: -42px; width: 100px; height: 100px; border-radius: 50%; content: ''; background: var(--card-soft,#edf5fb); }
.itpc-metric-card.is-blue { --card-color:var(--itpc-blue);--card-soft:#e9f4fc; }.itpc-metric-card.is-teal { --card-color:var(--itpc-teal);--card-soft:#e6f7f5; }.itpc-metric-card.is-gold { --card-color:var(--itpc-gold);--card-soft:#fff6db; }.itpc-metric-card.is-green { --card-color:var(--itpc-green);--card-soft:#e8f8f0; }
.itpc-metric-card strong { position: relative; z-index: 1; font-size: 31px; line-height: 1; }.itpc-metric-card > span:last-child { position: relative; z-index: 1; margin-top: 7px; font-weight: 750; }.itpc-metric-icon { position: absolute; top: 16px; right: 16px; z-index: 1; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 10px; background: var(--card-soft); color: var(--card-color); font-weight: 850; }

.itpc-section-heading { justify-content: space-between; gap: 18px; margin: 0 0 13px; }.itpc-section-heading h3 { margin: 4px 0 0; font-size: 25px; }.itpc-section-heading > a { font-weight: 750; text-decoration: none; }
.itpc-card-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.itpc-info-card { position: relative; padding: 19px; border-top: 4px solid var(--itpc-blue); color: inherit !important; text-decoration: none !important; transition: transform .18s ease,box-shadow .18s ease; }.itpc-info-card:nth-child(2n) { border-top-color: var(--itpc-teal); }.itpc-info-card:hover { transform: translateY(-3px); box-shadow: 0 15px 34px rgba(14,49,87,.12); }.itpc-card-top { justify-content: space-between; gap: 12px; }.itpc-info-card h4 { margin: 11px 0 4px; font-size: 18px; }.itpc-info-card > p { margin: 0 0 16px; color: var(--itpc-muted) !important; }.itpc-card-footer { display: flex; justify-content: space-between; gap: 12px; padding-top: 12px; border-top: 1px solid #edf1f5; font-size: 12px; }.itpc-card-footer span { color: var(--itpc-muted); }.itpc-card-footer strong { color: var(--itpc-blue); }
.itpc-code { color: var(--itpc-blue); font-size: 11px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }

.itpc-list { display: grid; gap: 13px; }.itpc-list-card { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px; border-left: 4px solid var(--itpc-blue); color: inherit !important; text-decoration: none !important; }.itpc-list a.itpc-list-card { transition: transform .18s ease,box-shadow .18s ease; }.itpc-list a.itpc-list-card:hover { transform: translateX(3px); box-shadow: 0 13px 30px rgba(14,49,87,.1); }.itpc-list-card h3 { margin: 5px 0; font-size: 19px; }.itpc-list-card p { margin: 4px 0; color: var(--itpc-muted) !important; }.itpc-list-card small { color: var(--itpc-muted); }.itpc-list-meta { display: grid; min-width: 180px; justify-items: end; gap: 6px; text-align: right; }.itpc-list-meta > strong { font-size: 13px; }.itpc-list-meta > span:last-child { color: var(--itpc-blue); font-size: 12px; font-weight: 750; }
.itpc-status { display: inline-flex; width: fit-content; align-items: center; padding: 5px 10px; border-radius: 999px; background: #edf1f5; color: #415166; font-size: 11px; font-weight: 800; white-space: nowrap; }
.itpc-status--active,.itpc-status--completed,.itpc-status--paid,.itpc-status--approved { background:#e7f7ef;color:#0d7048; }.itpc-status--planned,.itpc-status--on_hold,.itpc-status--pending,.itpc-status--draft,.itpc-status--processing { background:#fff5d9;color:#805d00; }.itpc-status--cancelled,.itpc-status--suspended,.itpc-status--failed,.itpc-status--changes_requested { background:#ffedeb;color:#9e2e29; }.itpc-status--submitted { background:#e9f2fc;color:#155b94; }
.itpc-empty { grid-column: 1/-1; padding: 24px; border: 1px dashed #b9cbdb; border-radius: 14px; background: #f8fbfd; color: var(--itpc-muted) !important; }

.itpc-billing-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; margin-bottom: 18px; }.itpc-billing-summary > div { display: grid; gap: 4px; padding: 21px; border: 1px solid var(--itpc-border); border-left: 5px solid; border-radius: 16px; background: #fff; box-shadow: 0 8px 22px rgba(14,49,87,.06); }.itpc-billing-summary .is-danger { border-left-color: var(--itpc-red); background: linear-gradient(120deg,#fff,#fff5f4); }.itpc-billing-summary .is-success { border-left-color: var(--itpc-green); background: linear-gradient(120deg,#fff,#f0faf5); }.itpc-billing-summary span { color: var(--itpc-muted); }.itpc-billing-summary strong { font-size: 25px; }
.itpc-table-wrap { overflow: hidden; }.itpc-table { width: 100%; border-collapse: collapse; }.itpc-table th,.itpc-table td { padding: 14px 16px; border-bottom: 1px solid #e7edf3; text-align: left; vertical-align: middle; }.itpc-table th { background: #f6f8fb; color: #536478; font-size: 11px; letter-spacing: .035em; text-transform: uppercase; }.itpc-table tbody tr:last-child td { border-bottom: 0; }.itpc-table td small { display: block; color: var(--itpc-muted); }

.itpc-back { display: inline-flex; margin-bottom: 13px; font-weight: 750; text-decoration: none; }.itpc-project-title { justify-content: space-between; gap: 20px; margin-bottom: 18px; padding: 22px 24px; border: 1px solid var(--itpc-border); border-left: 5px solid var(--itpc-blue); border-radius: 18px; background: #fff; box-shadow: 0 10px 28px rgba(14,49,87,.065); }.itpc-current-stage { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 17px; padding: 20px 22px; border-left: 5px solid var(--itpc-teal); background: linear-gradient(120deg,#fff,#effaf9); }.itpc-current-stage h3 { margin: 4px 0; font-size: 24px; }.itpc-current-stage p:last-child { margin: 2px 0 0; color: var(--itpc-muted) !important; }.itpc-current-stage > span { display: grid; place-items: center; min-width: 70px; height: 46px; border-radius: 13px; background: #ddf3f0; color: #086c6e; font-weight: 850; }
.itpc-workflow-track { display: grid; grid-template-columns: repeat(auto-fit,minmax(150px,1fr)); gap: 9px; margin: 0 0 20px; padding: 0; list-style: none; }.itpc-workflow-track li { display: flex; align-items: center; gap: 8px; min-height: 62px; padding: 10px; border: 1px solid var(--itpc-border); border-radius: 13px; background: #fff; }.itpc-workflow-track li > span { display: grid; place-items: center; flex: 0 0 29px; width: 29px; height: 29px; border-radius: 50%; background: #edf1f5; color: #657589; font-size: 11px; font-weight: 850; }.itpc-workflow-track li div { display: grid; }.itpc-workflow-track li strong { font-size: 12px; line-height: 1.3; }.itpc-workflow-track li small { color: var(--itpc-muted); font-size: 10px; }.itpc-workflow-track li.is-done { border-color:#bfe2d1;background:#f2faf6; }.itpc-workflow-track li.is-done > span { background:var(--itpc-green);color:#fff; }.itpc-workflow-track li.is-current { border:2px solid var(--itpc-blue);background:#eef6fc;box-shadow:0 7px 18px rgba(23,105,170,.11); }.itpc-workflow-track li.is-current > span { background:var(--itpc-blue);color:#fff; }

.itpc-form-card { margin: 20px 0; padding: 23px; border-top: 5px solid var(--itpc-blue); }.itpc-wizard-steps { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 6px; margin: 18px 0 22px; }.itpc-wizard-steps button { display: grid; place-items: center; gap: 5px; min-height: 60px; padding: 7px 3px; border: 0; border-radius: 10px; background: #f3f6f9; color: #617287; font: inherit; font-size: 10px; cursor: pointer; }.itpc-wizard-steps button span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: #dde5ed; font-weight: 850; }.itpc-wizard-steps button.is-active { background: #eaf4fc; color: var(--itpc-blue-dark); font-weight: 800; }.itpc-wizard-steps button.is-active span { background: var(--itpc-blue); color: #fff; }.itpc-wizard-panel { display: none; padding: 20px; border: 1px solid #dce5ee; border-left: 4px solid var(--itpc-cyan); border-radius: 14px; background: #fbfdff; }.itpc-wizard-panel.is-active { display: block; }.itpc-wizard-panel h4 { margin: 5px 0; font-size: 23px; }.itpc-wizard-panel > p:not(.itpc-eyebrow) { color: var(--itpc-muted) !important; }.itpc-wizard-panel label:not(.itpc-check) { display: grid; gap: 7px; font-weight: 750; }.itpc-wizard-panel textarea { width: 100%; min-height: 145px; padding: 12px; border: 1px solid #bdccdb; border-radius: 10px; background: #fff; font: inherit; resize: vertical; }.itpc-check { display: flex; align-items: flex-start; gap: 9px; margin-top: 14px; padding: 12px; border-radius: 10px; background: #f0f5f9; font-size: 13px; }.itpc-check input { margin-top: 3px; }.itpc-wizard-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 16px; }.itpc-wizard-actions [name="form_intent"][value="draft"] { margin-left: auto; }
.itpc-form-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0; }
.itpc-form-card form > label:not(.itpc-check),.itpc-form-grid > label { display:grid;gap:7px;margin:14px 0;color:var(--itpc-blue-dark);font-weight:750; }
.itpc-form-grid > label { margin:0; }
.itpc-form-card input[type="text"],.itpc-form-card input[type="email"],.itpc-form-card input[type="number"],.itpc-form-card select,.itpc-form-card textarea { width:100%;min-height:46px;padding:10px 12px;border:1px solid #bdccdb;border-radius:10px;background:#fff;color:var(--itpc-text);font:inherit; }
.itpc-form-card textarea { min-height:110px;resize:vertical; }
.itpc-form-card label small { color:var(--itpc-muted);font-size:11px;font-weight:500; }
.itpc-data-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 11px; }.itpc-data-list > div { padding: 13px; border: 1px solid #e0e7ee; border-radius: 11px; background: #f9fbfd; }.itpc-data-list dt { margin-bottom: 5px; color: var(--itpc-blue-dark); font-size: 11px; font-weight: 850; text-transform: uppercase; }.itpc-data-list dd { margin: 0; color: #405168; }
.itpc-detail-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; margin-top: 18px; }.itpc-panel-card { padding: 20px; border-top: 4px solid var(--itpc-blue); }.itpc-panel-card:nth-child(2) { border-top-color: var(--itpc-teal); }.itpc-panel-card h3 { margin: 0 0 15px; }.itpc-compact-list,.itpc-timeline { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }.itpc-compact-list li { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px; border-radius: 10px; background: #f6f8fb; }.itpc-compact-list li div { display: grid; }.itpc-compact-list small,.itpc-timeline small { color: var(--itpc-muted); }.itpc-timeline li { position: relative; display: grid; grid-template-columns: 14px 1fr; gap: 10px; }.itpc-timeline li > span { width: 10px; height: 10px; margin-top: 7px; border: 2px solid #fff; border-radius: 50%; background: var(--itpc-teal); box-shadow: 0 0 0 2px #a6d7d3; }.itpc-timeline li div { display: grid; }.itpc-timeline p { margin: 3px 0 0; color: var(--itpc-muted) !important; font-size: 12px; }

.itpc-portal__footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 28px; padding: 18px 22px; border-top: 1px solid var(--itpc-border); color: var(--itpc-muted); }.itpc-portal__footer div { display: grid; }.itpc-portal__footer strong { color: var(--itpc-blue-dark); }.itpc-portal__footer span { font-size: 11px; }.itpc-portal__footer p { margin: 0; font-size: 12px; }

.itpc-login { display: grid; grid-template-columns: minmax(0,1.12fr) minmax(350px,.72fr); min-height: 610px; overflow: hidden; border: 1px solid var(--itpc-border); border-radius: 26px; background: #fff; box-shadow: 0 22px 65px rgba(8,37,66,.14); }
.itpc-login__story { position: relative; display: flex; flex-direction: column; justify-content: center; padding: clamp(34px,6vw,72px); overflow: hidden; background: linear-gradient(145deg,#082b4d 0%,#115c91 58%,#188ba9 100%); color: #fff; }.itpc-login__story::before,.itpc-login__story::after { position: absolute; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; content: ''; }.itpc-login__story::before { width: 360px;height:360px;right:-140px;top:-150px; }.itpc-login__story::after { width: 260px;height:260px;left:-100px;bottom:-130px; }.itpc-login__story .itpc-eyebrow { position:relative;color:#a9e1f6 !important; }.itpc-login__story h1 { position:relative;max-width:680px;margin:10px 0 15px;color:#fff;font-size:clamp(38px,6vw,68px);line-height:1.02;letter-spacing:-.045em; }.itpc-login__lead { position:relative;max-width:590px;margin:0;color:#e4f1f8 !important;font-size:17px; }.itpc-brand-pill { position:relative;display:inline-flex;width:fit-content;margin-bottom:25px;padding:8px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.09);font-size:11px;font-weight:750;letter-spacing:.04em; }.itpc-feature-list { position:relative;display:grid;gap:10px;margin:28px 0;padding:0;list-style:none; }.itpc-feature-list li { display:flex;align-items:center;gap:10px;font-weight:650; }.itpc-feature-list li span { display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:rgba(255,255,255,.13);color:#bbecff;font-size:10px;font-weight:850; }.itpc-slogan { position:relative;margin-top:15px;padding-top:17px;border-top:1px solid rgba(255,255,255,.18);color:#d8edf7;font-size:12px;font-weight:750;letter-spacing:.06em;text-transform:uppercase; }
.itpc-login__card { display:flex;flex-direction:column;justify-content:center;padding:clamp(30px,5vw,58px); }.itpc-login__mark { margin-bottom:21px; }.itpc-login__card h2 { margin:5px 0;font-size:35px; }.itpc-login__card > p:not(.itpc-eyebrow):not(.itpc-security-note) { margin:0 0 21px;color:var(--itpc-muted) !important; }.itpc-login form p { margin:0 0 14px; }.itpc-login form label { display:grid;gap:6px;color:var(--itpc-text);font-weight:750; }.itpc-login form input[type="text"],.itpc-login form input[type="password"] { width:100%;min-height:48px;padding:10px 12px;border:1px solid #bdccdb;border-radius:10px;background:#fbfcfe;font:inherit; }.itpc-login form .login-remember label { display:flex;align-items:center;gap:8px;font-weight:500; }.itpc-login form .login-submit input { width:100%;min-height:48px;border:0;border-radius:11px;background:linear-gradient(135deg,var(--itpc-blue),var(--itpc-blue-dark));color:#fff;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 10px 22px rgba(23,105,170,.22); }.itpc-login__links { margin-top:-3px;text-align:center; }.itpc-login__links a { font-size:13px;font-weight:700;text-decoration:none; }.itpc-security-note { display:flex;align-items:center;gap:7px;margin:22px 0 0 !important;padding-top:16px;border-top:1px solid #e6ecf2;color:var(--itpc-muted) !important;font-size:11px; }

.itpc-password-toggle { display:block;margin:-8px 0 10px auto;padding:0;border:0;background:transparent;color:var(--itpc-blue);font:inherit;font-size:11px;font-weight:750;cursor:pointer; }

@media (max-width: 980px) {
	.itpc-layout { grid-template-columns:1fr; }.itpc-sidebar { position:static;display:grid;grid-template-columns:repeat(4,minmax(0,1fr)); }.itpc-sidebar__title,.itpc-sidebar__cta { grid-column:1/-1; }.itpc-sidebar > a { grid-template-columns:31px minmax(0,1fr) auto; }.itpc-metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.itpc-login { grid-template-columns:1fr; }.itpc-login__story { min-height:430px; }.itpc-wizard-steps { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (max-width: 680px) {
	.itpc-portal { width:min(100% - 18px,1240px);margin-top:7px; }.itpc-portal__header,.itpc-brand-lockup,.itpc-project-title,.itpc-current-stage,.itpc-welcome,.itpc-section-heading,.itpc-list-card,.itpc-portal__footer { align-items:stretch;flex-direction:column; }.itpc-header-actions { align-items:stretch;justify-content:flex-start; }.itpc-header-actions > * { width:100%; }.itpc-sidebar { grid-template-columns:1fr 1fr; }.itpc-sidebar__title,.itpc-sidebar__cta { grid-column:1/-1; }.itpc-metric-grid,.itpc-card-grid,.itpc-billing-summary,.itpc-detail-grid,.itpc-data-list,.itpc-form-grid { grid-template-columns:1fr; }.itpc-list-meta { min-width:0;justify-items:start;text-align:left; }.itpc-organization-switcher { align-items:stretch;flex-direction:column; }.itpc-wizard-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }.itpc-wizard-actions { display:grid;grid-template-columns:1fr 1fr; }.itpc-wizard-actions [name="form_intent"][value="draft"] { margin-left:0; }.itpc-login { min-height:0;border-radius:19px; }.itpc-login__story { min-height:380px;padding:34px 25px; }.itpc-login__story h1 { font-size:42px; }.itpc-login__card { padding:35px 25px; }.itpc-table thead { position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0); }.itpc-table tr { display:grid;padding:12px;border-bottom:1px solid var(--itpc-border); }.itpc-table td { display:grid;grid-template-columns:110px 1fr;padding:7px 5px;border:0; }.itpc-table td::before { content:attr(data-label);color:var(--itpc-muted);font-size:11px;font-weight:800;text-transform:uppercase; }
}
@media (prefers-reduced-motion: reduce) { .itpc-portal * { scroll-behavior:auto !important;transition:none !important;animation:none !important; } }

/* v0.3.0-beta — soporte y dashboard */
.itpc-support-layout{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(360px,1.3fr);gap:18px}.itpc-support-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.itpc-support-tabs a{padding:8px 11px;border:1px solid var(--itpc-border);border-radius:999px;background:#fff;text-decoration:none;font-weight:750;font-size:12px}.itpc-support-search{display:flex;gap:8px;margin-bottom:14px}.itpc-support-search input{flex:1}.itpc-ticket-list{display:grid;gap:9px}.itpc-ticket-list>a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid var(--itpc-border);border-radius:12px;background:#fff;text-decoration:none;box-shadow:0 4px 14px rgba(25,61,96,.04)}.itpc-ticket-list>a:hover{border-color:#9ec9e7;box-shadow:0 8px 20px rgba(25,61,96,.08)}.itpc-ticket-list>a>div{display:grid;gap:3px}.itpc-ticket-list small{color:var(--itpc-muted)}.itpc-support-thread{display:grid;gap:12px;margin:18px 0}.itpc-support-thread article{max-width:88%;padding:14px 16px;border:1px solid var(--itpc-border);border-radius:14px;background:#fff;box-shadow:0 5px 15px rgba(25,61,96,.04)}.itpc-support-thread article.is-client{margin-left:auto;border-color:#bcd9ee;background:#f3f9fd}.itpc-support-thread article.is-internal{margin-right:auto}.itpc-support-thread article.is-note{margin-right:auto;border-style:dashed;background:#fff9e8}.itpc-support-thread header{display:flex;justify-content:space-between;gap:12px;margin-bottom:7px;font-size:12px}.itpc-support-thread header span{color:var(--itpc-muted)}.itpc-support-thread p{margin:0}.itpc-confirmation-box{border-left:5px solid var(--itpc-gold,#c59525)}.itpc-project-support{margin-top:18px}.itpc-status--new,.itpc-status--open{background:#eaf5fd;color:#145f93}.itpc-status--waiting_client,.itpc-status--pending_confirmation{background:#fff7df;color:#8a6300}.itpc-status--closed{background:#eef8f2;color:#26734d}.itpc-status--high{background:#fff0ef;color:#a83732}.itpc-status--medium{background:#fff7df;color:#8a6300}.itpc-status--low{background:#eef8f2;color:#26734d}
@media(max-width:980px){.itpc-support-layout{grid-template-columns:1fr}.itpc-sidebar{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.itpc-support-search{flex-direction:column}.itpc-ticket-list>a{align-items:flex-start;flex-direction:column}.itpc-support-thread article{max-width:100%}.itpc-support-thread article.is-client{margin-left:0}.itpc-sidebar{grid-template-columns:1fr 1fr}}

/* v0.4.0-beta — acceso corporativo, acciones, documentos y aprobaciones */
.itpc-login__card .itpc-auth-form{display:grid;gap:16px;margin:8px 0 0}
.itpc-login__card .itpc-auth-form>label{display:grid;gap:7px;margin:0;color:var(--itpc-text);font-size:13px;font-weight:800}
.itpc-login__card .itpc-auth-form input[type="text"],
.itpc-login__card .itpc-auth-form input[type="email"],
.itpc-login__card .itpc-auth-form input[type="password"]{display:block;width:100%!important;min-width:0;min-height:50px!important;margin:0!important;padding:11px 13px!important;border:1px solid #b9c9d8!important;border-radius:11px!important;background:#fbfdff!important;color:var(--itpc-text)!important;font:inherit!important;line-height:1.3!important;box-shadow:inset 0 1px 2px rgba(17,45,72,.03)!important;appearance:none}
.itpc-login__card .itpc-auth-form input:focus{border-color:var(--itpc-cyan)!important;box-shadow:0 0 0 3px rgba(47,155,211,.15)!important;outline:0!important}
.itpc-password-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;overflow:hidden;border-radius:11px}
.itpc-password-wrap input{border-radius:11px 0 0 11px!important}
.itpc-password-wrap button{min-width:78px;margin:0!important;padding:0 12px;border:1px solid #b9c9d8;border-left:0;border-radius:0 11px 11px 0;background:#eef5fa;color:var(--itpc-blue-dark);font:inherit;font-size:12px;font-weight:800;cursor:pointer}
.itpc-auth-remember{display:flex!important;grid-template-columns:none!important;align-items:center!important;gap:9px!important;font-weight:600!important}
.itpc-auth-remember input{width:17px!important;height:17px!important;min-height:0!important;margin:0!important}
.itpc-auth-submit{display:flex!important;align-items:center;justify-content:center;width:100%!important;min-height:50px!important;margin:2px 0 0!important;padding:11px 16px!important;border:0!important;border-radius:11px!important;background:linear-gradient(135deg,var(--itpc-blue),var(--itpc-blue-dark))!important;color:#fff!important;font:inherit!important;font-weight:850!important;line-height:1.2!important;cursor:pointer!important;box-shadow:0 10px 22px rgba(23,105,170,.22)!important}
.itpc-auth-submit:hover{transform:translateY(-1px);box-shadow:0 13px 26px rgba(23,105,170,.28)!important}
.itpc-auth-message{margin:10px 0 16px;padding:12px 14px;border:1px solid #e2c5c4;border-left:4px solid var(--itpc-red);border-radius:10px;background:#fff4f3;font-size:13px;font-weight:650}
.itpc-auth-message.is-success{border-color:#b9e3d1;border-left-color:var(--itpc-green);background:#edf9f4}
.itpc-login__links{margin:16px 0 0;text-align:center}
.itpc-action-board{margin:18px 0;padding:20px;border:1px solid var(--itpc-border);border-left:5px solid var(--itpc-gold);border-radius:16px;background:#fff;box-shadow:0 7px 22px rgba(14,49,87,.05)}
.itpc-action-board--team{border-left-color:var(--itpc-blue)}
.itpc-action-count{display:grid;place-items:center;min-width:34px;height:34px;padding:0 8px;border-radius:999px;background:#fff1c7;color:#745400;font-weight:850}
.itpc-service-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.itpc-service-fields label,.itpc-inline-upload label,.itpc-approval-card label{display:grid;gap:6px;color:var(--itpc-text);font-weight:750}
.itpc-service-fields textarea,.itpc-service-fields input,.itpc-service-fields select,.itpc-inline-upload input,.itpc-approval-card textarea{width:100%;min-height:44px;padding:9px 11px;border:1px solid var(--itpc-border);border-radius:9px;background:#fff;font:inherit}
.itpc-service-fields label:has(textarea){grid-column:1/-1}
.itpc-inline-upload{display:grid;grid-template-columns:1.2fr .8fr 1.2fr auto;gap:10px;align-items:end;margin-top:16px;padding-top:16px;border-top:1px solid var(--itpc-border)}
.itpc-approval-card{display:grid;gap:12px;margin:10px 0;padding:15px;border:1px solid var(--itpc-border);border-radius:12px;background:#fafcff}
.itpc-approval-card>div>p{margin:4px 0 0;color:var(--itpc-muted)!important}
.itpc-status--observed{background:#fff7df;color:#8a6300}.itpc-status--pending{background:#fff7df;color:#8a6300}
@media(max-width:680px){.itpc-login__card .itpc-auth-form{gap:14px}.itpc-password-wrap{grid-template-columns:minmax(0,1fr) 70px}.itpc-service-fields,.itpc-inline-upload{grid-template-columns:1fr}.itpc-service-fields label:has(textarea){grid-column:auto}.itpc-action-board{padding:15px}}

/* v0.4 — decisiones con alternativas */
.itpc-portal .itpc-choice-fieldset{margin:16px 0;padding:14px 16px;border:1px solid rgba(28,86,141,.22);border-radius:14px;background:#f8fbfe}.itpc-portal .itpc-choice-fieldset legend{padding:0 6px;font-weight:700;color:#17324f}.itpc-portal .itpc-choice{display:flex;align-items:flex-start;gap:10px;padding:10px 8px;margin:4px 0;border-radius:10px;cursor:pointer}.itpc-portal .itpc-choice:hover{background:#eef6fc}.itpc-portal .itpc-choice input{margin-top:3px;flex:0 0 auto}.itpc-portal .itpc-choice span{line-height:1.4}


/* v0.4.1-beta — HOTFIX visual de acceso. Reglas deliberadamente específicas para aislar el Portal del tema. */
body .itpc-portal.itpc-login{
	width:min(1040px,calc(100% - 30px))!important;
	max-width:1040px!important;
	margin:34px auto 54px!important;
	display:grid!important;
	grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr)!important;
	align-items:stretch!important;
	min-height:530px!important;
	overflow:hidden!important;
	border:1px solid #d6e2ed!important;
	border-radius:24px!important;
	background:#fff!important;
	box-shadow:0 22px 64px rgba(8,37,66,.14)!important;
	color:#172b43!important;
}
body .itpc-portal.itpc-login>.itpc-login__story{
	position:relative!important;
	display:flex!important;
	flex-direction:column!important;
	justify-content:center!important;
	min-width:0!important;
	min-height:530px!important;
	padding:46px 44px!important;
	overflow:hidden!important;
	background:linear-gradient(145deg,#082b4d 0%,#115c91 56%,#188ba9 100%)!important;
	color:#fff!important;
}
body .itpc-portal.itpc-login>.itpc-login__story::before,
body .itpc-portal.itpc-login>.itpc-login__story::after{
	display:block!important;
	position:absolute!important;
	pointer-events:none!important;
	border:1px solid rgba(255,255,255,.16)!important;
	border-radius:999px!important;
	content:""!important;
}
body .itpc-portal.itpc-login>.itpc-login__story::before{width:300px!important;height:300px!important;right:-112px!important;top:-120px!important}
body .itpc-portal.itpc-login>.itpc-login__story::after{width:210px!important;height:210px!important;left:-82px!important;bottom:-92px!important}
body .itpc-portal.itpc-login .itpc-login__story .itpc-brand-pill{
	position:relative!important;
	display:inline-flex!important;
	align-items:center!important;
	width:max-content!important;
	max-width:100%!important;
	margin:0 0 22px!important;
	padding:7px 11px!important;
	border:1px solid rgba(255,255,255,.24)!important;
	border-radius:999px!important;
	background:rgba(255,255,255,.10)!important;
	color:#fff!important;
	font-size:11px!important;
	font-weight:750!important;
	line-height:1.2!important;
}
body .itpc-portal.itpc-login .itpc-login__story .itpc-eyebrow{
	position:relative!important;
	margin:0!important;
	color:#bfeaff!important;
	font-size:11px!important;
	font-weight:850!important;
	letter-spacing:.09em!important;
	text-transform:uppercase!important;
}
body .itpc-portal.itpc-login .itpc-login__story h1{
	position:relative!important;
	max-width:540px!important;
	margin:10px 0 14px!important;
	padding:0!important;
	color:#fff!important;
	font-size:clamp(38px,4.25vw,54px)!important;
	font-weight:750!important;
	line-height:1.02!important;
	letter-spacing:-.04em!important;
	text-wrap:balance;
}
body .itpc-portal.itpc-login .itpc-login__story .itpc-login__lead{
	position:relative!important;
	max-width:520px!important;
	margin:0!important;
	color:#e5f3fa!important;
	font-size:15px!important;
	font-weight:450!important;
	line-height:1.55!important;
}
body .itpc-portal.itpc-login .itpc-feature-list{
	position:relative!important;
	display:grid!important;
	gap:8px!important;
	margin:24px 0!important;
	padding:0!important;
	list-style:none!important;
}
body .itpc-portal.itpc-login .itpc-feature-list li{
	display:flex!important;
	align-items:center!important;
	gap:10px!important;
	margin:0!important;
	padding:0!important;
	color:#fff!important;
	font-size:13px!important;
	font-weight:650!important;
	line-height:1.3!important;
}
body .itpc-portal.itpc-login .itpc-feature-list li span{
	display:grid!important;
	place-items:center!important;
	flex:0 0 30px!important;
	width:30px!important;
	height:30px!important;
	border-radius:9px!important;
	background:rgba(255,255,255,.14)!important;
	color:#c7efff!important;
	font-size:10px!important;
	font-weight:850!important;
}
body .itpc-portal.itpc-login .itpc-slogan{
	position:relative!important;
	margin:5px 0 0!important;
	padding:16px 0 0!important;
	border-top:1px solid rgba(255,255,255,.20)!important;
	color:#d9edf7!important;
	font-size:11px!important;
	font-weight:750!important;
	letter-spacing:.055em!important;
	line-height:1.4!important;
	text-transform:uppercase!important;
}
body .itpc-portal.itpc-login>.itpc-login__card{
	display:flex!important;
	flex-direction:column!important;
	justify-content:center!important;
	min-width:0!important;
	padding:42px 40px!important;
	background:#fff!important;
	color:#172b43!important;
}
body .itpc-portal.itpc-login .itpc-login__mark{
	display:grid!important;
	place-items:center!important;
	width:48px!important;
	height:48px!important;
	margin:0 0 18px!important;
	border-radius:15px!important;
	background:linear-gradient(145deg,#1769aa,#2f9bd3)!important;
	color:#fff!important;
	font-size:17px!important;
	font-weight:850!important;
	line-height:1!important;
	letter-spacing:-.03em!important;
	box-shadow:0 9px 22px rgba(23,105,170,.24)!important;
}
body .itpc-portal.itpc-login .itpc-login__card>.itpc-eyebrow{
	margin:0 0 3px!important;
	color:#1769aa!important;
	font-size:10px!important;
	font-weight:850!important;
	letter-spacing:.10em!important;
	text-transform:uppercase!important;
}
body .itpc-portal.itpc-login .itpc-login__card h2{
	margin:3px 0 6px!important;
	padding:0!important;
	color:#172b43!important;
	font-size:31px!important;
	font-weight:700!important;
	line-height:1.15!important;
	letter-spacing:-.025em!important;
}
body .itpc-portal.itpc-login .itpc-login__card>p:not(.itpc-eyebrow):not(.itpc-security-note){
	margin:0 0 18px!important;
	color:#617287!important;
	font-size:14px!important;
	line-height:1.5!important;
}
body .itpc-portal.itpc-login .itpc-auth-form{
	display:grid!important;
	gap:14px!important;
	width:100%!important;
	margin:7px 0 0!important;
	padding:0!important;
}
body .itpc-portal.itpc-login .itpc-auth-form>label{
	display:grid!important;
	gap:6px!important;
	width:100%!important;
	margin:0!important;
	padding:0!important;
	color:#172b43!important;
	font-size:12px!important;
	font-weight:800!important;
	line-height:1.3!important;
}
body .itpc-portal.itpc-login .itpc-auth-form input[type="text"],
body .itpc-portal.itpc-login .itpc-auth-form input[type="email"],
body .itpc-portal.itpc-login .itpc-auth-form input[type="password"]{
	display:block!important;
	width:100%!important;
	max-width:none!important;
	min-width:0!important;
	min-height:48px!important;
	margin:0!important;
	padding:11px 13px!important;
	border:1px solid #b9c9d8!important;
	border-radius:10px!important;
	background:#fbfdff!important;
	color:#172b43!important;
	font:inherit!important;
	font-size:14px!important;
	line-height:1.25!important;
	box-shadow:inset 0 1px 2px rgba(17,45,72,.035)!important;
	appearance:none!important;
}
body .itpc-portal.itpc-login .itpc-auth-form input:focus{
	border-color:#2f9bd3!important;
	outline:0!important;
	box-shadow:0 0 0 3px rgba(47,155,211,.15)!important;
}
body .itpc-portal.itpc-login .itpc-password-wrap{
	display:grid!important;
	grid-template-columns:minmax(0,1fr) 76px!important;
	align-items:stretch!important;
	width:100%!important;
	margin:0!important;
	padding:0!important;
	overflow:hidden!important;
	border-radius:10px!important;
}
body .itpc-portal.itpc-login .itpc-password-wrap input{
	border-radius:10px 0 0 10px!important;
}
body .itpc-portal.itpc-login .itpc-password-wrap button,
body .itpc-portal.itpc-login .itpc-password-toggle{
	display:flex!important;
	align-items:center!important;
	justify-content:center!important;
	min-width:76px!important;
	height:auto!important;
	min-height:48px!important;
	margin:0!important;
	padding:0 10px!important;
	border:1px solid #b9c9d8!important;
	border-left:0!important;
	border-radius:0 10px 10px 0!important;
	background:#eef5fa!important;
	color:#0e3157!important;
	font:inherit!important;
	font-size:11px!important;
	font-weight:800!important;
	line-height:1!important;
	text-decoration:none!important;
	cursor:pointer!important;
}
body .itpc-portal.itpc-login .itpc-auth-remember{
	display:flex!important;
	align-items:center!important;
	gap:8px!important;
	width:max-content!important;
	max-width:100%!important;
	font-size:12px!important;
	font-weight:600!important;
}
body .itpc-portal.itpc-login .itpc-auth-remember input{
	flex:0 0 16px!important;
	width:16px!important;
	height:16px!important;
	min-height:0!important;
	margin:0!important;
	padding:0!important;
}
body .itpc-portal.itpc-login .itpc-auth-submit{
	display:flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:100%!important;
	min-height:48px!important;
	margin:1px 0 0!important;
	padding:11px 16px!important;
	border:0!important;
	border-radius:10px!important;
	background:linear-gradient(135deg,#1769aa,#0e3157)!important;
	color:#fff!important;
	font:inherit!important;
	font-size:13px!important;
	font-weight:850!important;
	line-height:1.2!important;
	text-align:center!important;
	text-decoration:none!important;
	cursor:pointer!important;
	box-shadow:0 10px 22px rgba(23,105,170,.20)!important;
}
body .itpc-portal.itpc-login .itpc-auth-submit:hover{transform:translateY(-1px)!important;box-shadow:0 13px 27px rgba(23,105,170,.27)!important}
body .itpc-portal.itpc-login .itpc-login__links{
	margin:14px 0 0!important;
	text-align:center!important;
}
body .itpc-portal.itpc-login .itpc-login__links a{
	color:#1769aa!important;
	font-size:12px!important;
	font-weight:750!important;
	text-decoration:none!important;
}
body .itpc-portal.itpc-login .itpc-security-note{
	display:flex!important;
	align-items:center!important;
	gap:7px!important;
	margin:19px 0 0!important;
	padding:14px 0 0!important;
	border-top:1px solid #e4ebf2!important;
	color:#6b7b8d!important;
	font-size:10px!important;
	line-height:1.4!important;
}
body .itpc-portal.itpc-login .itpc-auth-message{
	margin:10px 0 15px!important;
	padding:11px 13px!important;
	border:1px solid #e2c5c4!important;
	border-left:4px solid #b53b38!important;
	border-radius:10px!important;
	background:#fff4f3!important;
	color:#6b2f2d!important;
	font-size:12px!important;
	font-weight:650!important;
}
body .itpc-portal.itpc-login .itpc-auth-message.is-success{border-color:#b9e3d1!important;border-left-color:#17865a!important;background:#edf9f4!important;color:#176141!important}

@media (max-width:900px){
	body .itpc-portal.itpc-login{grid-template-columns:1fr!important;max-width:720px!important;min-height:0!important}
	body .itpc-portal.itpc-login>.itpc-login__story{min-height:300px!important;padding:34px 36px!important}
	body .itpc-portal.itpc-login .itpc-login__story h1{max-width:620px!important;font-size:clamp(36px,7vw,48px)!important}
	body .itpc-portal.itpc-login .itpc-feature-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin:20px 0!important}
	body .itpc-portal.itpc-login .itpc-feature-list li{align-items:flex-start!important;font-size:11px!important}
	body .itpc-portal.itpc-login .itpc-feature-list li span{flex-basis:28px!important;width:28px!important;height:28px!important}
	body .itpc-portal.itpc-login>.itpc-login__card{padding:34px 36px!important}
}
@media (max-width:680px){
	body .itpc-portal.itpc-login{width:calc(100% - 16px)!important;margin:12px auto 34px!important;border-radius:18px!important}
	body .itpc-portal.itpc-login>.itpc-login__story{min-height:0!important;padding:28px 22px!important}
	body .itpc-portal.itpc-login .itpc-login__story .itpc-brand-pill{margin-bottom:16px!important;font-size:10px!important}
	body .itpc-portal.itpc-login .itpc-login__story h1{margin:8px 0 11px!important;font-size:34px!important;line-height:1.04!important}
	body .itpc-portal.itpc-login .itpc-login__story .itpc-login__lead{font-size:14px!important}
	body .itpc-portal.itpc-login .itpc-feature-list{display:none!important}
	body .itpc-portal.itpc-login .itpc-slogan{margin-top:18px!important;font-size:10px!important}
	body .itpc-portal.itpc-login>.itpc-login__card{padding:28px 22px 25px!important}
	body .itpc-portal.itpc-login .itpc-login__mark{width:44px!important;height:44px!important;margin-bottom:15px!important}
	body .itpc-portal.itpc-login .itpc-login__card h2{font-size:28px!important}
	body .itpc-portal.itpc-login .itpc-password-wrap{grid-template-columns:minmax(0,1fr) 70px!important}
	body .itpc-portal.itpc-login .itpc-password-wrap button{min-width:70px!important;padding:0 8px!important}
}

/* v0.5.0-beta — refinamiento visual del Portal y soporte */
body .itpc-portal:not(.itpc-login) {
	margin-top: -34px !important;
}
body .itpc-portal .itpc-sidebar > a.is-active {
	border-color: #0e3157 !important;
	background: linear-gradient(135deg,#0e3157,#1769aa) !important;
	color: #fff !important;
	box-shadow: 0 10px 22px rgba(14,49,87,.22) !important;
}
body .itpc-portal .itpc-sidebar > a.is-active strong,
body .itpc-portal .itpc-sidebar > a.is-active small,
body .itpc-portal .itpc-sidebar > a.is-active .itpc-nav-icon {
	color: #fff !important;
}
body .itpc-portal .itpc-sidebar > a.is-active small { opacity: .86; }
body .itpc-portal .itpc-sidebar > a.is-active .itpc-nav-icon {
	background: rgba(255,255,255,.16) !important;
}
.itpc-portal-notice {
	justify-content: flex-start;
	max-width: 100%;
	font-weight: 700;
	box-shadow: 0 8px 20px rgba(23,134,90,.08);
}
.itpc-alert__icon {
	display: grid;
	place-items: center;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	border-radius: 999px;
	background: #17865a;
	color: #fff;
	font-size: 14px;
	font-weight: 900;
}
.itpc-support-layout {
	display: grid;
	grid-template-columns: minmax(0,1fr) !important;
	gap: 18px;
}
.itpc-support-layout > .itpc-panel-card {
	width: 100%;
	padding: 22px;
}
.itpc-support-layout form {
	display: grid;
	gap: 14px;
}
.itpc-support-layout form > label,
.itpc-support-layout .itpc-form-grid > label {
	display: grid;
	gap: 7px;
	margin: 0;
	color: var(--itpc-blue-dark);
	font-weight: 750;
}
.itpc-support-layout input[type="text"],
.itpc-support-layout input[type="search"],
.itpc-support-layout select,
.itpc-support-layout textarea {
	width: 100%;
	max-width: none;
	min-height: 46px;
	padding: 10px 12px;
	border: 1px solid #bfcfdf;
	border-radius: 10px;
	background: #fbfdff;
	color: var(--itpc-text);
	font: inherit;
}
.itpc-support-layout textarea {
	min-height: 140px;
	resize: vertical;
}
.itpc-support-layout input:focus,
.itpc-support-layout select:focus,
.itpc-support-layout textarea:focus {
	border-color: var(--itpc-cyan);
	outline: 0;
	box-shadow: 0 0 0 3px rgba(47,155,211,.13);
}
.itpc-support-layout .itpc-form-grid {
	display: grid;
	grid-template-columns: minmax(0,.7fr) minmax(0,1.3fr);
	gap: 14px;
	margin: 0;
}
.itpc-support-layout .itpc-support-search {
	display: grid;
	grid-template-columns: minmax(0,1fr) auto;
	align-items: end;
	gap: 10px;
	margin: 0 0 16px;
}
.itpc-dashboard-support {
	margin: 0 0 28px;
	padding: 20px;
	border: 1px solid var(--itpc-border);
	border-left: 5px solid var(--itpc-teal);
	border-radius: 18px;
	background: linear-gradient(120deg,#fff,#f4fbfa);
	box-shadow: 0 10px 28px rgba(14,49,87,.06);
}
.itpc-ticket-list--dashboard > a {
	background: rgba(255,255,255,.92);
}
@media (max-width: 980px) {
	body .itpc-portal:not(.itpc-login) { margin-top: -18px !important; }
}
@media (max-width: 680px) {
	body .itpc-portal:not(.itpc-login) { margin-top: -8px !important; }
	.itpc-support-layout .itpc-form-grid,
	.itpc-support-layout .itpc-support-search { grid-template-columns: 1fr; }
}


/* v0.6.0-beta — consistencia visual y formularios de cuenta */
.itpc-action-board,.itpc-panel-card,.itpc-form-card,.itpc-info-card,.itpc-list-card{padding:24px 26px!important}
.itpc-action-board .itpc-section-heading,.itpc-panel-card .itpc-section-heading,.itpc-form-card .itpc-section-heading{margin-bottom:18px}
.itpc-service-project-link{margin-top:12px!important;padding-top:10px;border-top:1px solid #e3ebf2;color:#536b80}.itpc-service-project-link a{font-weight:800;color:#0f6ca8;text-decoration:none}.itpc-service-project-link a:hover{text-decoration:underline}
.itpc-account-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.55fr);gap:18px;margin-bottom:18px}.itpc-account-help{color:#63778a;margin-top:-4px}.itpc-account-form label{display:block;font-weight:700;font-size:13px;margin-bottom:14px}.itpc-account-form label small{display:block;font-weight:400;color:#66788a;margin-top:5px;line-height:1.4}.itpc-account-form input,.itpc-account-form select,.itpc-account-form textarea{display:block;width:100%;min-height:44px;margin-top:6px;padding:10px 12px;border:1px solid #c7d6e4;border-radius:10px;background:#fff;color:#17324f;font:inherit}.itpc-account-form fieldset{padding:16px;margin:8px 0 16px;border:1px solid #d9e5ee;border-radius:14px}.itpc-account-form legend{padding:0 6px;font-weight:800}.itpc-table th:last-child,.itpc-table td:last-child{text-align:center}.itpc-table td .itpc-button--primary{color:#fff!important;background:linear-gradient(135deg,#1379ba,#0e4e82)!important;border-color:#0e4e82!important;box-shadow:0 8px 18px rgba(15,79,133,.18)!important}
@media(max-width:820px){.itpc-account-grid{grid-template-columns:1fr}.itpc-action-board,.itpc-panel-card,.itpc-form-card,.itpc-info-card,.itpc-list-card{padding:20px!important}}

/* v0.7.2-beta — nombres largos de documentos */
.itpc-compact-list li>div{min-width:0;flex:1 1 auto}
.itpc-compact-list li strong,.itpc-compact-list li small{overflow-wrap:anywhere;word-break:break-word;max-width:100%}
.itpc-compact-list li>a{flex:0 0 auto}


/* v0.7.3-beta — HOTFIX vista cliente: métricas, botones, workflow y decisiones */
body .itpc-portal:not(.itpc-login) .itpc-metric-grid{
	display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important;margin:20px 0 30px!important;
}
body .itpc-portal:not(.itpc-login) .itpc-metric-card{
	display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:flex-start!important;
	min-width:0!important;min-height:132px!important;padding:24px 22px!important;border:1px solid var(--itpc-border)!important;
	border-radius:18px!important;background:#fff!important;box-shadow:0 10px 26px rgba(14,49,87,.07)!important;overflow:hidden!important;
}
body .itpc-portal:not(.itpc-login) .itpc-metric-card strong{font-size:32px!important;line-height:1!important;margin:0 0 8px!important}
body .itpc-portal:not(.itpc-login) .itpc-metric-card>span:last-child{margin:0!important;max-width:calc(100% - 8px)!important;line-height:1.3!important}
body .itpc-portal:not(.itpc-login) .itpc-metric-icon{top:18px!important;right:18px!important;width:36px!important;height:36px!important}
body .itpc-portal:not(.itpc-login) .itpc-button,
body .itpc-portal:not(.itpc-login) button.itpc-button,
body .itpc-portal:not(.itpc-login) a.itpc-button{
	display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:0!important;min-height:42px!important;
	padding:9px 15px!important;border:1px solid var(--itpc-blue)!important;border-radius:10px!important;background:#fff!important;
	color:var(--itpc-blue-dark)!important;font:inherit!important;font-weight:800!important;line-height:1.2!important;text-decoration:none!important;white-space:normal!important;
}
body .itpc-portal:not(.itpc-login) .itpc-button--primary,
body .itpc-portal:not(.itpc-login) button.itpc-button--primary,
body .itpc-portal:not(.itpc-login) a.itpc-button--primary{
	background:linear-gradient(135deg,var(--itpc-blue),#14598f)!important;color:#fff!important;border-color:#14598f!important;box-shadow:0 8px 18px rgba(23,105,170,.18)!important;
}
body .itpc-portal .itpc-workflow-track{
	display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin:0 0 24px!important;padding:0!important;list-style:none!important;
}
body .itpc-portal .itpc-workflow-track li{
	display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;align-items:center!important;gap:12px!important;min-width:0!important;min-height:94px!important;
	padding:16px!important;border:1px solid var(--itpc-border)!important;border-radius:15px!important;background:#fff!important;box-shadow:0 6px 18px rgba(14,49,87,.045)!important;
}
body .itpc-portal .itpc-workflow-track li>span{
	display:grid!important;place-items:center!important;width:34px!important;height:34px!important;border-radius:50%!important;background:#edf2f7!important;color:#607287!important;font-weight:850!important;
}
body .itpc-portal .itpc-workflow-track li div{display:grid!important;gap:4px!important;min-width:0!important}
body .itpc-portal .itpc-workflow-track li strong{font-size:13px!important;line-height:1.3!important;overflow-wrap:anywhere!important}
body .itpc-portal .itpc-workflow-track li small{font-size:10px!important;line-height:1.25!important;color:var(--itpc-muted)!important}
body .itpc-portal .itpc-workflow-track li.is-done{border-color:#b9dfcd!important;background:#f1faf5!important}
body .itpc-portal .itpc-workflow-track li.is-done>span{background:var(--itpc-green)!important;color:#fff!important}
body .itpc-portal .itpc-workflow-track li.is-current{border:2px solid var(--itpc-blue)!important;background:linear-gradient(145deg,#edf6fd,#fff)!important;box-shadow:0 10px 24px rgba(23,105,170,.13)!important}
body .itpc-portal .itpc-workflow-track li.is-current>span{background:var(--itpc-blue)!important;color:#fff!important}
body .itpc-portal .itpc-workflow-track li.is-current small{display:inline-flex!important;width:max-content!important;max-width:100%!important;padding:3px 7px!important;border-radius:999px!important;background:#fff1c8!important;color:#725200!important;font-weight:800!important}
body .itpc-portal .itpc-approval-card{padding:22px!important;border:1px solid #c8d9e7!important;border-left:5px solid var(--itpc-blue)!important;border-radius:16px!important;background:linear-gradient(145deg,#fff,#f7fbff)!important;box-shadow:0 9px 24px rgba(14,49,87,.06)!important}
body .itpc-portal .itpc-approval-document-actions,body .itpc-portal .itpc-doc-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important}
body .itpc-portal .itpc-compact-list li{align-items:flex-start!important;gap:14px!important}
body .itpc-portal .itpc-button-row{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin-top:12px!important}
@media(max-width:980px){body .itpc-portal:not(.itpc-login) .itpc-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}body .itpc-portal .itpc-workflow-track{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:620px){body .itpc-portal:not(.itpc-login) .itpc-metric-grid,body .itpc-portal .itpc-workflow-track{grid-template-columns:1fr!important}body .itpc-portal .itpc-workflow-track li{min-height:78px!important}body .itpc-portal .itpc-doc-actions,body .itpc-portal .itpc-approval-document-actions,body .itpc-portal .itpc-button-row{display:grid!important;grid-template-columns:1fr!important}body .itpc-portal .itpc-doc-actions .itpc-button,body .itpc-portal .itpc-approval-document-actions .itpc-button,body .itpc-portal .itpc-button-row .itpc-button{width:100%!important}}

/* v0.7.4-beta — flujo simplificado, cierre terminal y orden visual */
body .itpc-portal .itpc-current-stage.is-terminal{
	border-color:#b9dfcd!important;border-top-color:var(--itpc-green)!important;background:linear-gradient(145deg,#f2fbf6,#fff)!important;
}
body .itpc-portal .itpc-workflow-track li.is-terminal{border-color:#c9d9e5!important;background:#f8fbfd!important}
body .itpc-portal .itpc-workflow-track li.is-current.is-terminal{border-color:var(--itpc-green)!important;background:#f1faf5!important;box-shadow:0 10px 24px rgba(35,143,91,.12)!important}
body .itpc-portal .itpc-workflow-track li.is-current.is-terminal>span{background:var(--itpc-green)!important}
body .itpc-portal .itpc-workflow-track li.is-current.is-terminal small{background:#e8f7ef!important;color:#226a46!important}
.itpc-action-guidance{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 22px;padding:18px 20px;border:1px solid #cdddea;border-left:5px solid var(--itpc-blue);border-radius:15px;background:#f8fbfe}
.itpc-action-guidance h3{margin:2px 0 5px;font-size:20px}.itpc-action-guidance p{margin:0;color:var(--itpc-muted)!important}.itpc-action-guidance--team{border-left-color:var(--itpc-teal);background:#f4fbfa}.itpc-action-guidance--none{border-left-color:var(--itpc-green);background:#f2fbf6}
.itpc-approval-comment textarea{min-height:120px!important;padding:13px 14px!important;border:1.5px solid #a9bfd1!important;background:#fff!important;box-shadow:inset 0 1px 2px rgba(14,49,87,.04)}
.itpc-approval-comment textarea:focus{outline:0!important;border-color:var(--itpc-blue)!important;box-shadow:0 0 0 3px rgba(23,105,170,.12)!important}
#itpc-service-documents .itpc-compact-list{gap:12px}
#itpc-service-documents .itpc-compact-list li{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:center!important;padding:15px 16px!important;border:1px solid #d9e5ee!important;background:#fbfdff!important}
#itpc-service-documents .itpc-doc-actions{justify-content:flex-end!important;min-width:190px!important}
#itpc-service-documents .itpc-inline-upload{margin-top:20px!important;padding-top:20px!important;border-top:1px solid #dce6ef!important}
.itpc-history-more{margin-top:14px;padding-top:12px;border-top:1px solid #e2ebf2}.itpc-history-more>summary{cursor:pointer;color:var(--itpc-blue);font-weight:800}.itpc-history-more[open]>summary{margin-bottom:14px}
.itpc-completion-summary{margin:20px 0;padding:24px 26px;border:1px solid #badfcb;border-top:5px solid var(--itpc-green);border-radius:18px;background:linear-gradient(145deg,#f5fcf8,#fff);box-shadow:0 10px 28px rgba(35,143,91,.08)}
.itpc-completion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.itpc-completion-grid>div{display:grid;gap:5px;padding:14px;border:1px solid #d8ebe0;border-radius:12px;background:#fff}.itpc-completion-grid span{color:var(--itpc-muted)}
.itpc-completion-docs{margin-top:18px;padding-top:16px;border-top:1px solid #d8ebe0}.itpc-completion-docs h4{margin:0 0 10px}.itpc-completion-docs ul{margin:0 0 10px;padding:0;list-style:none;display:grid;gap:8px}.itpc-completion-docs li{display:flex;justify-content:space-between;gap:14px;padding:9px 11px;border-radius:10px;background:#fff}.itpc-completion-docs li span{color:var(--itpc-muted);text-align:right}
@media(max-width:980px){.itpc-completion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.itpc-action-guidance{align-items:stretch;flex-direction:column}.itpc-completion-grid{grid-template-columns:1fr}#itpc-service-documents .itpc-compact-list li{grid-template-columns:1fr!important}#itpc-service-documents .itpc-doc-actions{min-width:0!important;justify-content:flex-start!important}.itpc-completion-docs li{flex-direction:column}.itpc-completion-docs li span{text-align:left}}
/* v0.7.4-beta — endpoint terminal diferenciado */
.itpc-workflow-track>li.is-terminal{grid-column:1/-1;min-height:auto;display:flex;align-items:center;gap:12px;padding:14px 18px;border-color:#b9dfcd;background:#f1faf5}
.itpc-workflow-track>li.is-terminal>span{flex:0 0 auto;background:#238f5b!important;color:#fff!important}
.itpc-workflow-track>li.is-terminal>div{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.itpc-workflow-track>li.is-terminal strong{color:#195c3d}
.itpc-workflow-track>li.is-terminal small{margin:0;color:#39775a;font-weight:700}
.itpc-completion-summary{scroll-margin-top:24px}

/* v0.7.5-beta — robustez del componente visual de workflow */
body .itpc-portal .itpc-workflow-track li,
body .itpc-portal .itpc-workflow-track li div,
body .itpc-portal .itpc-workflow-track li strong,
body .itpc-portal .itpc-workflow-track li small{
	min-width:0;
	max-width:100%;
}
body .itpc-portal .itpc-workflow-track li strong,
body .itpc-portal .itpc-workflow-track li small{
	white-space:normal;
	word-break:normal!important;
	overflow-wrap:break-word!important;
}

/* v0.7.7-beta — el estado final permanece neutro hasta el cierre real */
body .itpc-portal .itpc-workflow-track li.is-terminal:not(.is-current){border-color:var(--itpc-border)!important;background:#fff!important;box-shadow:0 6px 18px rgba(14,49,87,.045)!important}
body .itpc-portal .itpc-workflow-track li.is-terminal:not(.is-current)>span{background:#edf2f7!important;color:#607287!important}
body .itpc-portal .itpc-workflow-track li.is-terminal:not(.is-current) strong{color:var(--itpc-ink)!important}
body .itpc-portal .itpc-workflow-track li.is-terminal:not(.is-current) small{color:var(--itpc-muted)!important;background:transparent!important}

/* v1.0.0 — producción: nombre definitivo de marca */
.itpc-final-brand-banner{display:grid;gap:5px;margin:0 0 22px;padding:18px 20px;border:1px solid #b9dfcd;border-left:5px solid var(--itpc-green);border-radius:15px;background:linear-gradient(145deg,#f2fbf6,#fff);box-shadow:0 8px 22px rgba(35,143,91,.07)}
.itpc-final-brand-banner>span,.itpc-completion-brand>span{color:#347454;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.itpc-final-brand-banner>strong,.itpc-completion-brand>strong{font-size:28px;line-height:1.15;color:#164d35;overflow-wrap:anywhere}.itpc-final-brand-banner>small,.itpc-completion-brand>small{color:var(--itpc-muted)}
.itpc-completion-brand{display:grid;gap:5px;margin-top:16px;padding:18px 20px;border:1px solid #b9dfcd;border-left:5px solid var(--itpc-green);border-radius:14px;background:#fff}
@media(max-width:620px){.itpc-final-brand-banner>strong,.itpc-completion-brand>strong{font-size:23px}}

/* v1.0.1 — más aire entre etiqueta, marca definitiva y texto de apoyo */
body .itpc-portal .itpc-final-brand-banner,
body .itpc-portal .itpc-completion-brand{
	grid-template-columns:minmax(0,1fr)!important;
	row-gap:9px!important;
}
body .itpc-portal .itpc-final-brand-banner>span,
body .itpc-portal .itpc-completion-brand>span,
body .itpc-portal .itpc-final-brand-banner>strong,
body .itpc-portal .itpc-completion-brand>strong,
body .itpc-portal .itpc-final-brand-banner>small,
body .itpc-portal .itpc-completion-brand>small{
	display:block;
	margin:0!important;
}
body .itpc-portal .itpc-final-brand-banner>strong,
body .itpc-portal .itpc-completion-brand>strong{padding-top:2px}
body .itpc-portal .itpc-final-brand-banner>small,
body .itpc-portal .itpc-completion-brand>small{padding-top:2px;line-height:1.45}


/* v1.0.2 — estado seguro para cuentas sin organización activa */
body .itpc-account-unavailable{
	width:min(760px,calc(100% - 28px));
	margin:54px auto 80px!important;
}
body .itpc-account-unavailable__card{
	display:grid;
	justify-items:start;
	gap:12px;
	padding:34px;
	border:1px solid var(--itpc-border);
	border-top:5px solid var(--itpc-blue);
	border-radius:22px;
	background:linear-gradient(145deg,#fff,#f7fbff);
	box-shadow:0 16px 42px rgba(14,49,87,.10);
}
body .itpc-account-unavailable__mark{
	display:grid;place-items:center;width:52px;height:52px;border-radius:16px;
	background:linear-gradient(145deg,var(--itpc-blue),var(--itpc-cyan));
	color:#fff;font-weight:900;box-shadow:0 9px 22px rgba(23,105,170,.22);
}
body .itpc-account-unavailable__card h1{margin:2px 0 0!important;font-size:clamp(26px,5vw,38px)!important;line-height:1.08!important}
body .itpc-account-unavailable__message{margin:0!important;font-size:18px;line-height:1.5;color:var(--itpc-text)!important}
body .itpc-account-unavailable__help{margin:0!important;color:var(--itpc-muted)!important;line-height:1.55}
body .itpc-account-unavailable__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
@media(max-width:680px){
	body .itpc-account-unavailable{width:calc(100% - 24px);margin:24px auto 48px!important}
	body .itpc-account-unavailable__card{padding:24px 20px;border-radius:18px}
	body .itpc-account-unavailable__message{font-size:16px}
	body .itpc-account-unavailable__actions{width:100%}
	body .itpc-account-unavailable__actions .itpc-button{width:100%!important;min-height:48px!important}
}

/* v1.1.0 — cotizaciones por línea, decisión total/parcial y conversión operativa */
body .itpc-portal .itpc-quote-list{display:grid;gap:14px}
body .itpc-portal .itpc-quote-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding:20px 22px;border:1px solid var(--itpc-border);border-left:5px solid var(--itpc-blue);border-radius:16px;background:#fff;color:var(--itpc-text);text-decoration:none!important;box-shadow:0 9px 24px rgba(14,49,87,.055)}
body .itpc-portal .itpc-quote-card:hover{border-color:#9fc7e1;transform:translateY(-1px);box-shadow:0 12px 28px rgba(14,49,87,.10)}
body .itpc-portal .itpc-quote-card h3{margin:3px 0 5px;font-size:20px;line-height:1.25}
body .itpc-portal .itpc-quote-card p{margin:0;color:var(--itpc-muted)}
body .itpc-portal .itpc-quote-card__meta{display:grid;justify-items:end;gap:4px;text-align:right;min-width:160px}
body .itpc-portal .itpc-quote-card__meta>strong{font-size:23px;color:var(--itpc-blue-dark)}
body .itpc-portal .itpc-quote-card__meta>small{font-weight:800;color:var(--itpc-blue)}
body .itpc-portal .itpc-quote-status{display:inline-flex;align-items:center;justify-content:center;width:max-content;padding:5px 9px;border-radius:999px;background:#edf5fb;color:var(--itpc-blue-dark);font-size:12px;font-weight:850}
body .itpc-portal .itpc-quote-status.is-large{padding:8px 12px;font-size:13px}
body .itpc-portal .itpc-quote-title{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
body .itpc-portal .itpc-back-link{display:inline-block;margin:0 0 12px;font-weight:800;text-decoration:none}
body .itpc-portal .itpc-quote-summary-card{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 16px}
body .itpc-portal .itpc-quote-summary-card>div{display:grid;gap:4px;padding:16px 18px;border:1px solid var(--itpc-border);border-radius:14px;background:#fff}
body .itpc-portal .itpc-quote-summary-card span{color:var(--itpc-muted);font-size:12px;font-weight:700}
body .itpc-portal .itpc-quote-summary-card strong{font-size:22px;color:var(--itpc-blue-dark)}
body .itpc-portal .itpc-quote-summary-card .is-total{border-color:#a9cde5;background:#f5faff}
body .itpc-portal .itpc-quote-note{margin:0 0 16px;padding:16px 18px;border:1px solid #cbddea;border-left:5px solid var(--itpc-blue);border-radius:14px;background:#f8fbfe}
body .itpc-portal .itpc-quote-note p{margin:5px 0 0;white-space:normal}
body .itpc-portal .itpc-quote-lines{display:grid;gap:12px;margin:0 0 18px}
body .itpc-portal .itpc-quote-line{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,auto);gap:18px;align-items:center;padding:18px 20px;border:1px solid var(--itpc-border);border-radius:15px;background:#fff;box-shadow:0 6px 18px rgba(14,49,87,.04)}
body .itpc-portal .itpc-quote-line.is-accepted{border-left:5px solid var(--itpc-green);background:#f8fcfa}
body .itpc-portal .itpc-quote-line.is-rejected{opacity:.76;background:#fafbfc}
body .itpc-portal .itpc-quote-line__main{min-width:0}
body .itpc-portal .itpc-quote-line__main h3{margin:3px 0 5px;font-size:19px;line-height:1.3}
body .itpc-portal .itpc-quote-line__main p{margin:0;color:var(--itpc-muted)}
body .itpc-portal .itpc-quote-line__price{display:grid;justify-items:end;gap:3px;text-align:right;min-width:150px}
body .itpc-portal .itpc-quote-line__price small,body .itpc-portal .itpc-quote-line__price span{font-size:12px;color:var(--itpc-muted)}
body .itpc-portal .itpc-quote-line__price strong{font-size:22px;color:var(--itpc-blue-dark)}
body .itpc-portal .itpc-quote-discount-note{display:inline-block;margin-top:8px;padding:4px 8px;border-radius:8px;background:#fff6da;color:#6e5618;font-weight:750}
body .itpc-portal .itpc-quote-line__result{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:10px;border-top:1px solid #e6edf3}
body .itpc-portal .itpc-quote-decision{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:850}.itpc-quote-decision.is-accepted{background:#e9f7ef;color:#176c49}.itpc-quote-decision.is-rejected{background:#f3f5f7;color:#657486}
body .itpc-portal .itpc-button.is-compact{min-height:36px;padding:7px 11px;font-size:13px}
body .itpc-portal .itpc-button--danger-outline{border-color:#d7a8a5!important;color:#8b3230!important;background:#fff!important}
body .itpc-portal .itpc-quote-decision-panel{margin:20px 0;padding:22px;border:1px solid #c5d9e8;border-top:4px solid var(--itpc-blue);border-radius:18px;background:#fff;box-shadow:0 12px 28px rgba(14,49,87,.06)}
body .itpc-portal .itpc-quote-decision-panel>p{margin:0 0 18px;color:var(--itpc-muted)}
body .itpc-portal .itpc-quote-choice-list{display:grid;gap:9px;margin:0 0 16px;padding:0;border:0}
body .itpc-portal .itpc-quote-choice-list legend{margin-bottom:9px;font-weight:800}
body .itpc-portal .itpc-quote-choice-list label{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--itpc-border);border-radius:12px;background:#fbfdff;cursor:pointer}
body .itpc-portal .itpc-quote-choice-list input[type="checkbox"]{flex:0 0 auto;width:20px!important;height:20px!important;min-height:0!important;margin:0!important;accent-color:var(--itpc-blue)}
body .itpc-portal .itpc-quote-choice-list span{display:flex;flex:1;justify-content:space-between;gap:16px;align-items:center;min-width:0}
body .itpc-portal .itpc-quote-choice-list strong{min-width:0;overflow-wrap:anywhere}
body .itpc-portal .itpc-quote-choice-list small{white-space:nowrap;color:var(--itpc-muted);font-weight:700}
body .itpc-portal .itpc-quote-comment{display:grid;gap:7px;margin:0 0 16px;font-weight:800}
body .itpc-portal .itpc-quote-comment textarea{width:100%;min-height:100px;padding:12px 14px;border:1px solid #bfcfdd;border-radius:11px;background:#fff;color:var(--itpc-text);font:inherit;resize:vertical}
body .itpc-portal .itpc-quote-decision-actions{display:flex;flex-wrap:wrap;gap:10px}
body .itpc-portal .itpc-quote-decision-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0;padding:20px;border:1px solid #b9dfcd;border-left:5px solid var(--itpc-green);border-radius:15px;background:#f3fbf7}
body .itpc-portal .itpc-quote-decision-summary h3{margin:3px 0 5px}.itpc-quote-decision-summary p{margin:0}.itpc-quote-decision-summary blockquote{margin:10px 0 0;padding:10px 12px;border-left:3px solid #9fcdb6;background:#fff;color:var(--itpc-muted)}
@media(max-width:760px){body .itpc-portal .itpc-quote-card{grid-template-columns:1fr}.itpc-portal .itpc-quote-card__meta{justify-items:start;text-align:left}.itpc-portal .itpc-quote-title{display:grid}.itpc-portal .itpc-quote-summary-card{grid-template-columns:1fr}.itpc-portal .itpc-quote-line{grid-template-columns:1fr}.itpc-portal .itpc-quote-line__price{justify-items:start;text-align:left}.itpc-portal .itpc-quote-line__result{justify-content:flex-start;flex-wrap:wrap}.itpc-portal .itpc-quote-choice-list span{align-items:flex-start;flex-direction:column;gap:2px}.itpc-portal .itpc-quote-choice-list small{white-space:normal}.itpc-portal .itpc-quote-decision-actions .itpc-button{width:100%}.itpc-portal .itpc-quote-decision-summary{align-items:flex-start;flex-direction:column}.itpc-portal .itpc-quote-decision-summary .itpc-button{width:100%}}

/* v1.1.3 — estados comerciales de cotizaciones */
.itpc-quote-status.is-accepted{font-weight:800;border-color:currentColor;box-shadow:0 0 0 3px rgba(0,0,0,.04)}
.itpc-quote-status.is-large.is-accepted{font-size:1rem;padding:.65rem 1rem}
.itpc-quote-payment-panel{display:flex;gap:1.25rem;align-items:center;justify-content:space-between;margin:1.25rem 0;padding:1.25rem;border:1px solid #d9e5ef;border-radius:16px;background:#f8fbfe}
.itpc-quote-payment-panel h3{margin:.1rem 0 .35rem}
@media(max-width:720px){.itpc-quote-payment-panel{align-items:stretch;flex-direction:column}}


/* v1.1.5 — jerarquía visual de cotizaciones según acción requerida */
body .itpc-portal .itpc-quote-list-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 0;padding:0 2px;color:var(--itpc-blue-dark)}
body .itpc-portal .itpc-quote-list-heading strong{font-size:15px;text-transform:uppercase;letter-spacing:.025em}
body .itpc-portal .itpc-quote-list-heading span{display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;background:#eaf4ff;color:var(--itpc-blue-dark);font-size:12px;font-weight:850}
body .itpc-portal .itpc-quote-list-heading.is-history{margin-top:18px;color:var(--itpc-muted)}
body .itpc-portal .itpc-quote-card.requires-action{border:2px solid #75b7e5;border-left:7px solid var(--itpc-blue);background:linear-gradient(135deg,#f7fbff 0%,#fff 72%);box-shadow:0 14px 34px rgba(14,83,145,.13)}
body .itpc-portal .itpc-quote-card.requires-action:hover{border-color:#4c9dd6;box-shadow:0 16px 38px rgba(14,83,145,.17)}
body .itpc-portal .itpc-quote-card.is-secondary{box-shadow:0 5px 14px rgba(14,49,87,.035);border-left-width:3px}
body .itpc-portal .itpc-quote-card.is-secondary:hover{box-shadow:0 8px 20px rgba(14,49,87,.075)}
body .itpc-portal .itpc-quote-action-kicker{display:inline-flex;margin:0 0 4px;padding:4px 8px;border-radius:999px;background:#0f6fae;color:#fff;font-size:11px;font-weight:900;letter-spacing:.035em;text-transform:uppercase}
body .itpc-portal .itpc-quote-status.needs-action{background:#dcefff;color:#0d5f97}
body .itpc-portal .itpc-quote-card__cta{font-weight:800;color:var(--itpc-blue)}
body .itpc-portal .itpc-quote-card__cta.is-primary{display:inline-flex;align-items:center;justify-content:center;margin-top:3px;padding:7px 11px;border-radius:9px;background:var(--itpc-blue);color:#fff}
body .itpc-portal .itpc-quote-card.is-secondary .itpc-code,body .itpc-portal .itpc-quote-card.is-secondary h3{opacity:.88}
@media(max-width:760px){body .itpc-portal .itpc-quote-list-heading{align-items:flex-start;flex-direction:column;gap:6px}.itpc-portal .itpc-quote-card__cta.is-primary{width:100%;margin-top:6px}}


/* v1.1.6 — flujo claro de decisión de cotización */
body .itpc-portal .itpc-quote-decision-option{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid var(--itpc-border);border-radius:14px;background:#fbfdff}
body .itpc-portal .itpc-quote-decision-option.is-primary-option{border-color:#a9cde5;background:#f5faff}
body .itpc-portal .itpc-quote-decision-option p{margin:4px 0 0;color:var(--itpc-muted)}
body .itpc-portal .itpc-quote-decision-divider{display:flex;align-items:center;gap:12px;margin:10px 0;color:var(--itpc-muted);font-weight:800}
body .itpc-portal .itpc-quote-decision-divider:before,body .itpc-portal .itpc-quote-decision-divider:after{content:"";height:1px;flex:1;background:var(--itpc-border)}
body .itpc-portal .itpc-quote-partial-toggle{display:flex;align-items:center;gap:12px;cursor:pointer}
body .itpc-portal .itpc-quote-partial-toggle input{width:21px!important;height:21px!important;min-height:0!important;margin:0!important;accent-color:var(--itpc-blue)}
body .itpc-portal .itpc-quote-partial-toggle span{display:grid;gap:2px}
body .itpc-portal .itpc-quote-partial-toggle small{color:var(--itpc-muted);font-weight:600}
body .itpc-portal .itpc-quote-partial-panel{margin:12px 0 0;padding:16px 18px;border:1px solid #c5d9e8;border-radius:14px;background:#fff}
body .itpc-portal .itpc-quote-partial-panel>p{margin:0 0 12px;font-weight:750}
body .itpc-portal .itpc-quote-reject-row{display:flex;justify-content:flex-end;margin-top:12px;padding-top:14px;border-top:1px solid var(--itpc-border)}
@media(max-width:760px){body .itpc-portal .itpc-quote-decision-option{align-items:stretch;flex-direction:column}.itpc-portal .itpc-quote-decision-option .itpc-button{width:100%}.itpc-portal .itpc-quote-reject-row .itpc-button{width:100%}}
