:root{
	--rcp-bg:#07111f;
	--rcp-bg-soft:#0b1730;
	--rcp-panel:#0d1a31;
	--rcp-panel-2:#10203a;
	--rcp-border:rgba(212,183,90,.18);
	--rcp-border-soft:rgba(255,255,255,.06);
	--rcp-gold:#d4b75a;
	--rcp-gold-strong:#e0c96d;
	--rcp-text:#f5f7fb;
	--rcp-text-soft:#c6d0e3;
	--rcp-muted:#8fa0bf;
	--rcp-shadow:0 18px 50px rgba(0,0,0,.28);
	--rcp-radius-xl:28px;
	--rcp-radius-lg:22px;
	--rcp-radius-md:16px;
	--rcp-radius-sm:12px;
	--rcp-font-display:clamp(32px,3vw,50px);
	--rcp-font-h1:clamp(24px,2vw,34px);
	--rcp-font-h2:22px;
	--rcp-font-h3:16px;
	--rcp-font-body:15px;
	--rcp-font-small:13px;
	--rcp-font-xs:12px;
}

*,
*::before,
*::after{
	box-sizing:border-box;
}

html,body{
	margin:0;
	padding:0;
	background:
		radial-gradient(circle at top left, rgba(212,183,90,.08), transparent 28%),
		linear-gradient(135deg,#050d19 0%,#061225 32%,#08162d 58%,#0a1933 100%);
	color:var(--rcp-text);
	font-family:Inter, "Segoe UI", sans-serif;
	font-size:var(--rcp-font-body);
	line-height:1.5;
}

body.rcp-body{
	min-height:100vh;
}

a{
	color:inherit;
	text-decoration:none;
}

.rcp-shell{
	display:grid;
	grid-template-columns:320px 1fr;
	min-height:100vh;
}

.rcp-sidebar{
	position:sticky;
	top:0;
	height:100vh;
	padding:28px 22px;
	border-right:1px solid var(--rcp-border-soft);
	background:rgba(2,10,24,.82);
	backdrop-filter:blur(12px);
}

.rcp-brand{
	display:flex;
	align-items:center;
	gap:16px;
	margin-bottom:34px;
}

.rcp-brand-mark{
	width:56px;
	height:56px;
	border-radius:18px;
	background:linear-gradient(135deg,var(--rcp-gold),#b99636);
	color:#111;
	display:flex;
	align-items:center;
	justify-content:center;
	font-weight:800;
	font-size:18px;
	letter-spacing:.06em;
	flex-shrink:0;
}

.rcp-brand h2{
	margin:0 0 4px;
	font-size:20px;
	font-weight:700;
	line-height:1.15;
}

.rcp-brand p{
	margin:0;
	font-size:var(--rcp-font-small);
	color:var(--rcp-text-soft);
}

.rcp-nav{
	display:flex;
	flex-direction:column;
	gap:10px;
}

.rcp-nav a{
	display:flex;
	align-items:center;
	min-height:54px;
	padding:0 18px;
	border:1px solid transparent;
	border-radius:20px;
	color:var(--rcp-text-soft);
	font-size:18px;
	font-weight:500;
	transition:.2s ease;
}

.rcp-nav a:hover{
	background:rgba(255,255,255,.03);
	color:var(--rcp-text);
	border-color:rgba(255,255,255,.05);
}

.rcp-nav a.active{
	background:rgba(255,255,255,.05);
	color:var(--rcp-text);
	border-color:rgba(212,183,90,.18);
	box-shadow:inset 0 0 0 1px rgba(255,255,255,.02);
}

.rcp-main{
	padding:28px 30px 34px;
	min-width:0;
}

.rcp-breadcrumbs{
	display:flex;
	align-items:center;
	gap:8px;
	margin-bottom:12px;
	color:var(--rcp-gold);
	font-size:var(--rcp-font-small);
	flex-wrap:wrap;
}

.rcp-breadcrumbs span{
	color:var(--rcp-gold);
}

.rcp-topbar{
	margin-bottom:24px;
}

.rcp-topbar h1{
	margin:0 0 8px;
	font-size:var(--rcp-font-h1);
	line-height:1.12;
	font-weight:700;
	letter-spacing:-.02em;
}

.rcp-topbar p{
	margin:0;
	font-size:clamp(16px,1.4vw,22px);
	line-height:1.35;
	color:var(--rcp-text-soft);
	max-width:980px;
}

.rcp-filter-panel,
.rcp-panel{
	background:linear-gradient(180deg,rgba(11,24,47,.95),rgba(10,20,37,.98));
	border:1px solid var(--rcp-border);
	border-radius:var(--rcp-radius-xl);
	box-shadow:var(--rcp-shadow);
	padding:26px;
	margin-bottom:22px;
	min-width:0;
}

.rcp-filter-form{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
	gap:16px;
	align-items:end;
}

.rcp-filter-group{
	display:grid;
	gap:8px;
	min-width:0;
}

.rcp-filter-group label{
	font-size:var(--rcp-font-small);
	color:var(--rcp-text-soft);
	font-weight:500;
}

.rcp-filter-group input,
.rcp-filter-group select,
.rcp-filter-group textarea{
	width:100%;
	min-width:0;
	background:#07152b;
	color:var(--rcp-text);
	border:1px solid rgba(255,255,255,.07);
	border-radius:18px;
	padding:15px 16px;
	font-size:16px;
	line-height:1.35;
	outline:none;
	transition:border-color .2s ease, box-shadow .2s ease;
}

.rcp-filter-group textarea{
	resize:vertical;
	min-height:120px;
}

.rcp-filter-group input:focus,
.rcp-filter-group select:focus,
.rcp-filter-group textarea:focus{
	border-color:rgba(212,183,90,.34);
	box-shadow:0 0 0 3px rgba(212,183,90,.08);
}

.rcp-filter-group input::placeholder,
.rcp-filter-group textarea::placeholder{
	color:#6f83a8;
}

.rcp-filter-actions{
	display:flex;
	gap:12px;
	align-items:center;
	flex-wrap:wrap;
}

.rcp-btn{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:56px;
	padding:0 22px;
	border:none;
	border-radius:18px;
	background:linear-gradient(135deg,var(--rcp-gold-strong),var(--rcp-gold));
	color:#111;
	font-size:15px;
	font-weight:700;
	cursor:pointer;
	transition:transform .15s ease, opacity .15s ease, box-shadow .2s ease;
	box-shadow:0 10px 26px rgba(212,183,90,.22);
}

.rcp-btn:hover{
	transform:translateY(-1px);
}

.rcp-btn-ghost{
	background:transparent;
	color:var(--rcp-text);
	border:1px solid rgba(255,255,255,.1);
	box-shadow:none;
}

.rcp-status-summary{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
	gap:16px;
	margin-bottom:22px;
}

.rcp-status-card,
.rcp-data-card{
	background:rgba(255,255,255,.03);
	border:1px solid rgba(255,255,255,.05);
	border-radius:20px;
	padding:18px;
	min-width:0;
}

.rcp-status-card span,
.rcp-data-card span{
	display:block;
	color:var(--rcp-text-soft);
	font-size:var(--rcp-font-small);
	margin-bottom:8px;
	line-height:1.3;
}

.rcp-status-card strong,
.rcp-data-card strong{
	display:block;
	font-size:18px;
	font-weight:600;
	line-height:1.35;
	color:var(--rcp-text);
	word-break:break-word;
	overflow-wrap:anywhere;
}

.rcp-table-head{
	display:flex;
	justify-content:space-between;
	align-items:center;
	gap:14px;
	margin-bottom:18px;
	flex-wrap:wrap;
}

.rcp-table-head h3{
	margin:0;
	font-size:var(--rcp-font-h2);
	font-weight:600;
}

.rcp-table-head p{
	margin:0;
	color:var(--rcp-text-soft);
	font-size:var(--rcp-font-body);
}

.rcp-table-wrap{
	overflow:auto;
}

.rcp-table{
	width:100%;
	border-collapse:collapse;
	min-width:980px;
}

.rcp-table th,
.rcp-table td{
	padding:18px 14px;
	border-bottom:1px solid rgba(255,255,255,.06);
	text-align:left;
	vertical-align:middle;
}

.rcp-table th{
	color:var(--rcp-text-soft);
	font-size:var(--rcp-font-small);
	font-weight:600;
	text-transform:uppercase;
	letter-spacing:.06em;
}

.rcp-table td{
	font-size:16px;
	color:var(--rcp-text);
}

.rcp-cell-stack{
	display:flex;
	flex-direction:column;
	gap:4px;
	min-width:0;
}

.rcp-cell-stack strong,
.rcp-cell-stack span{
	min-width:0;
	word-break:break-word;
	overflow-wrap:anywhere;
}

.rcp-cell-stack strong{
	font-size:16px;
	font-weight:600;
	line-height:1.35;
}

.rcp-cell-stack span{
	color:var(--rcp-text-soft);
	font-size:var(--rcp-font-small);
	line-height:1.35;
}

.rcp-badge{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:8px 12px;
	border-radius:999px;
	background:rgba(212,183,90,.1);
	border:1px solid rgba(212,183,90,.22);
	color:var(--rcp-text);
	font-size:12px;
	font-weight:700;
	white-space:nowrap;
}

.rcp-table-link{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:42px;
	padding:0 18px;
	border-radius:999px;
	border:1px solid rgba(212,183,90,.22);
	color:var(--rcp-gold-strong);
	font-size:15px;
	font-weight:700;
	white-space:nowrap;
}

.rcp-empty{
	color:var(--rcp-text-soft);
	margin:0;
	font-size:var(--rcp-font-body);
}

.rcp-detail-grid{
	display:grid;
	grid-template-columns:minmax(0,1.8fr) minmax(320px,1fr);
	gap:22px;
}

.rcp-main-stack,
.rcp-side-stack{
	display:grid;
	gap:22px;
	min-width:0;
}

.rcp-data-grid{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
	gap:14px;
}

.rcp-rich-text{
	color:var(--rcp-text);
	font-size:15px;
	line-height:1.7;
	word-break:break-word;
	overflow-wrap:anywhere;
}

.rcp-admin-form{
	display:grid;
	gap:14px;
}

.rcp-stage-track{
	display:grid;
	gap:12px;
}

.rcp-stage-step{
	display:flex;
	align-items:center;
	gap:10px;
	color:var(--rcp-text-soft);
	font-size:14px;
	font-weight:500;
}

.rcp-stage-dot{
	width:11px;
	height:11px;
	border-radius:999px;
	background:rgba(255,255,255,.16);
	flex-shrink:0;
}

.rcp-stage-step.is-complete .rcp-stage-dot,
.rcp-stage-step.is-current .rcp-stage-dot{
	background:var(--rcp-gold);
	box-shadow:0 0 0 5px rgba(212,183,90,.08);
}

.rcp-stage-step.is-current{
	color:var(--rcp-text);
}

.rcp-mini-list{
	display:grid;
	gap:12px;
}

.rcp-mini-row{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:12px;
	padding-bottom:10px;
	border-bottom:1px solid rgba(255,255,255,.06);
}

.rcp-mini-row span{
	color:var(--rcp-text-soft);
	font-size:var(--rcp-font-small);
}

.rcp-mini-row strong{
	font-size:15px;
	font-weight:600;
	text-align:right;
	word-break:break-word;
	overflow-wrap:anywhere;
}

@media (max-width: 1180px){
	.rcp-detail-grid{
		grid-template-columns:1fr;
	}
}

@media (max-width: 1024px){
	.rcp-shell{
		grid-template-columns:1fr;
	}

	.rcp-sidebar{
		position:relative;
		height:auto;
		border-right:none;
		border-bottom:1px solid var(--rcp-border-soft);
	}

	.rcp-nav a{
		font-size:17px;
		min-height:50px;
	}

	.rcp-main{
		padding:24px 18px 28px;
	}
}

@media (max-width: 640px){
	.rcp-topbar h1{
		font-size:30px;
	}

	.rcp-topbar p{
		font-size:16px;
	}

	.rcp-filter-panel,
	.rcp-panel{
		padding:18px;
		border-radius:22px;
	}

	.rcp-table{
		min-width:760px;
	}
}
.rcp-stats-grid{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
	gap:16px;
	margin-bottom:22px;
}

.rcp-stat-card{
	background:rgba(255,255,255,.03);
	border:1px solid rgba(255,255,255,.05);
	border-radius:20px;
	padding:18px;
	min-width:0;
}

.rcp-stat-card span{
	display:block;
	color:var(--rcp-text-soft);
	font-size:var(--rcp-font-small);
	margin-bottom:8px;
	line-height:1.3;
}

.rcp-stat-card strong{
	display:block;
	font-size:18px;
	font-weight:600;
	line-height:1.35;
	color:var(--rcp-text);
	word-break:break-word;
	overflow-wrap:anywhere;
}

.rcp-info-grid{
	display:grid;
	grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
	gap:14px;
}

.rcp-info-card{
	background:rgba(255,255,255,.03);
	border:1px solid rgba(255,255,255,.05);
	border-radius:20px;
	padding:18px;
	min-width:0;
}

.rcp-info-card span{
	display:block;
	color:var(--rcp-text-soft);
	font-size:var(--rcp-font-small);
	margin-bottom:8px;
	line-height:1.3;
}

.rcp-info-card strong{
	display:block;
	font-size:16px;
	font-weight:600;
	line-height:1.35;
	color:var(--rcp-text);
	word-break:break-word;
	overflow-wrap:anywhere;
}

.rcp-project-hero,
.rcp-stage-wrap,
.rcp-text-block{
	margin-bottom:22px;
}

.rcp-project-hero h3,
.rcp-stage-wrap h4,
.rcp-text-block h4{
	margin:0 0 12px;
	font-size:18px;
	font-weight:600;
}

.rcp-project-hero p{
	margin:0;
	color:var(--rcp-text-soft);
	font-size:15px;
}