/* Partner Platform — download_tree layout (nested accordion) */

.pp-layout--tree { display: flex; flex-direction: column; gap: 2px; }
.pp-layout--tree .pp-layout-intro { margin-bottom: 22px; }

.pp-tree-group--l1 { background-color: var(--gray-90); }
.pp-tree-group--l2 { background-color: var(--gray-70); }
.pp-tree-group--l3 { background-color: var(--gray-60); }

.pp-tree-summary {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 18px 20px;
	cursor: pointer;
	list-style: none;
	transition: background-color 0.15s;
}
.pp-tree-summary::-webkit-details-marker { display: none; }
.pp-tree-summary:hover { background-color: var(--gray-80); }
.pp-tree-summary:focus-visible { outline: 2px solid var(--yellow); outline-offset: -2px; }

.pp-tree-title {
	flex: 1;
	font-family: 'Geist', sans-serif;
	font-weight: 600;
	letter-spacing: -0.01em;
	color: var(--white);
}
.pp-tree-group--l1 > .pp-tree-summary .pp-tree-title { font-size: 18px; }
.pp-tree-group--l2 > .pp-tree-summary .pp-tree-title { font-size: 16px; }
.pp-tree-group--l3 > .pp-tree-summary .pp-tree-title { font-size: 14px; font-weight: 500; }

.pp-tree-count {
	font-family: 'Space Mono', monospace;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	color: rgba(255,255,255,0.5);
	border: 1px solid var(--gray-60);
	border-radius: 999px;
	padding: 3px 10px;
}
.pp-tree-chevron { color: var(--yellow); transition: transform 0.2s; }
.pp-tree-group[open] > .pp-tree-summary .pp-tree-chevron { transform: rotate(180deg); }

.pp-tree-body {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 6px 6px 6px;
}
.pp-tree-group--l1 > .pp-tree-summary { background-color: var(--gray-80); }
.pp-tree-group--l1[open] > .pp-tree-summary .pp-tree-title { color: var(--yellow); }
.pp-tree-group--l2[open] > .pp-tree-summary .pp-tree-title,
.pp-tree-group--l3[open] > .pp-tree-summary .pp-tree-title { color: var(--yellow); }
.pp-tree-summary:hover,
.pp-tree-group--l1 > .pp-tree-summary:hover { background-color: var(--gray-60); }
.pp-tree-group--l3 > .pp-tree-summary:hover { background-color: var(--gray-40); }

/* File rows sit "inside" the groups: darkest surface so they never blend with group headers */
.pp-tree-body .pp-download-item { background-color: var(--black); }
.pp-tree-body .pp-download-item:hover { background-color: var(--gray-90); }
.pp-tree-group--l3 .pp-tree-count,
.pp-tree-group--l2 .pp-tree-count { color: var(--white); border-color: var(--gray-20); }

@media (max-width: 768px) {
	.pp-tree-summary { padding: 16px; gap: 12px; }
	.pp-tree-body { padding: 6px; }
}
