/* Phase 4 Share Page Styles */

/* Container */
.page-content:has( .phase4-share-container) {
	margin-left: 10px;
	width: 100vw;
	/* border: 5px dashed red; */
}
.phase4-share-container {
	height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

/* Header */
.phase4-share-header {
	padding: 16px;
	background: #fff;
	border-bottom: 1px solid #ddd;
}

.phase4-share-title {
	font-size: 24px;
	font-weight: 600;
	color: #333;
	margin-bottom: 4px;
}
.phase4-share-title span {
	font: 500 17px/normal 'Albert Sans';
	margin-left: 5px;
}

.phase4-share-subtitle {
	font-size: 14px;
	color: #666;
}

/* Content Area */
.phase4-share-content {
	flex: 1;
	overflow-x: auto;
	overflow-y: auto;
	padding: 16px;
}

.phase4-share-loading, .phase4-share-error {
	padding: 60px 20px;
}

/* Sitemap Content */
.phase4-share-sitemap-content {
	display: flex;
	flex-direction: column;
	width: fit-content;
}

/* Navigation Section */
.phase4-share-navigation-section {
	margin-bottom: 25px;
	min-width: fit-content;
}

.phase4-share-navigation-header {
	font-size: 18px;
	font-weight: 600;
	padding: 0 0 8px 0;
	margin-bottom: 8px;
	color: #333;
}
.phase4-share-navigation-header.unnamed {
	opacity: .7;
}

/* Primary Pages Container - Horizontal Layout */
.phase4-share-primary-pages {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	width: 100%;
}

/* Page Wrapper */
.phase4-share-page-wrapper {
	/* flex-shrink: 0; */
	/* flex: 1 1 0; */
	/* max-width: 170px; */
}

/* Level 1: Horizontal layout */
.phase4-share-page-wrapper.level-1 {
	display: inline-block;
	vertical-align: top;
	/* width: 170px; */
	width: calc((100% - 70px) / 8);
}

/* Level 2+: Vertical with indentation */
.phase4-share-page-wrapper.level-2, .phase4-share-page-wrapper.level-3, .phase4-share-page-wrapper.level-4 {
	display: block;
	margin: 8px 0 0 10px;
	width: calc(100% - 10px);
}

/* Page Item */
.phase4-share-page-item {
	width: 100%;
	background: #F0F0F0;
	border: 1px solid #999999;
	border-radius: 6px;
	padding: 3px 5px 3px 2px;
	font-size: 12px;
	margin-bottom: 8px;
}
.phase4-share-page-item.stacked {
	position: relative;
	width: calc(100% - 6px);
}
.phase4-share-page-item.stacked:before, .phase4-share-page-item.stacked:after {
	content: '';
    position: absolute;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    left: 5px;
    bottom: -7px;
    border: 1px solid #BBBBBB;
    background-color: #D8D8D8;
    border-radius: 6px;
    z-index: -1;
}
.phase4-share-page-item.stacked:after {
	left: 2px;
    bottom: -4px;
}

.phase4-share-page-item.hidden {
	display: block !important;
	opacity: 0.5;
}

.phase4-share-page-header {
	display: flex;
	align-items: flex-start;
    gap: 5px;
}

.phase4-share-page-header .page-type-icon {
	line-height: normal;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-top: 2px;
}

.phase4-share-page-title {
	font-weight: 600;
	color: #000000;
	word-wrap: break-word;
	word-break: break-word;
	line-height: normal;
}

.phase4-share-page-item .page-note {
	padding: 0 5px 0 15px;
}

.phase4-share-page-url {
	font-size: 10px;
	color: #666;
	font-family: monospace;
	word-wrap: break-word;
	line-height: 1.2;
}

/* Sections */
.phase4-share-sections {
	margin: 6px 0 0 0;
	padding: 0 0 0 15px;
	list-style-type: none;
}

.phase4-share-section-item {
	position: relative;
	padding: 0;
	font-size: 11px;
	color: #333333;
}
.phase4-share-section-item:last-child {
	border-bottom: none;
}
.phase4-share-section-item:before {
	position: absolute;
	content: '';
	width: 3px;
	height: 13px;
	top: 2px;
	left: -6px;
	background-color: #999999;
}

/* Children Container */
.phase4-share-children-container {
	margin-top: 8px;
}

.phase4-share-children-container .phase4-share-page-item {
	background: linear-gradient(to bottom, #E8E8E8, #D8D8D8);
	border-color: #BBBBBB;
}
.phase4-share-children-container .phase4-share-page-item:has( .page-type-icon.header) {
	background: unset;
    border: unset;
    border-radius: 0;
	padding: 0 0 0 3px;
    border-left: 1px solid #BBBBBB;
}

/* Print Styles */
@media print {
	@page {
		size: landscape;
		margin: 0.2in;
	}
	
	html, body {
		print-color-adjust: exact;
		-webkit-print-color-adjust: exact;
		margin: 0 !important;
		padding: 0 !important;
	}

	.main-content:has( .phase4-share-container) {
		max-width: 100% !important;
		width: 100% !important;
		margin: 0 !important;
	}

	.page-content:has( .phase4-share-container) {
		margin: 0 !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		flex: 1 1 auto;
		border-width: 0;
	}
	
	.phase4-share-container {
		height: auto;
		overflow: visible;
		width: 100%;
		margin-top: 0 !important;
		padding-top: 0 !important;
	}
	
	.phase4-share-header {
		padding: 8px;
		margin-top: 0 !important;
	}
	
	.phase4-share-title {
		font-size: 20px;
	}
	
	.phase4-share-subtitle {
		font-size: 12px;
	}
	
	.phase4-share-content {
		overflow: visible;
		width: 100%;
		padding: 0;
	}
	
	.phase4-share-sitemap-content {
		width: 100%;
		min-width: 0;
	}
	
	.phase4-share-primary-pages {
		width: 100%;
		max-width: 100%;
		flex-wrap: wrap;
	}
	
	.phase4-share-navigation-section {
		width: 100%;
		min-width: 0;
		margin-bottom: 20px;
	}
	
	.phase4-share-navigation-header {
		page-break-after: avoid;
		break-after: avoid;
	}
	
	.phase4-share-primary-pages {
		page-break-before: avoid;
		break-before: avoid;
	}
	
	.phase4-share-page-wrapper {
		page-break-inside: avoid;
		break-inside: avoid;
	}
	
	.phase4-share-page-item {
		background: #f0f0f0;
		page-break-inside: avoid;
		break-inside: avoid;
	}

	.phase4-share-sections {
		padding-left: 20px;
	}
	
	.phase4-share-children-container {
		page-break-inside: avoid;
		break-inside: avoid;
	}

	/* TESTING */
	html:has( .phase4-container), 
	body:has( .phase4-container), 
	#app:has( .phase4-container), 
	.main-content:has( .phase4-container), 
	.page-content:has( .phase4-container), 
	.phase4-container {
		margin: 0;
		padding: 0;
		width: 100%;
		height: 100%;
	}
	body:has( .phase4-container) .app-toolbar {
		background-color: transparent;
		border: unset;
		padding: 20px 22px;
	}
	.phase4-content {
		width: 100%;
		height: 100%;
	}
	.phase4-content .sitemap-editor-panel {
		height: 100%;
		max-height: unset;
	}
	.phase4-content .panel-header {
		height: 100%;
	}
	.phase4-content .panel-header > .row .sitemap-options {
		margin: 0;
		padding: 0;
	}
	.phase4-content .panel-header > .row .sitemap-options .version-dropdown {
		display: flex !important;
		margin: 50px 0 0 15px;
	}
	.phase4-content .panel-header > .row .sitemap-options .version-dropdown:before {
		box-shadow: unset;
	}
	.phase4-content .panel-header > .row .sitemap-options .version-dropdown .block {
		text-transform: none;
	}
	.phase4-content .panel-header > .row .sitemap-options .version-dropdown .q-icon {
		display: none;
	}
	.phase4-content .sitemap-content {
		border-top: 1px solid #DDDDDD;
	}
	
	.phase4-content .sitemap-content {
		overflow: hidden;
		margin-top: 10px;
		height: 100%;
	}
	.phase4-content .primary-pages-container {
		flex-wrap: wrap;
		width: 100%;
		gap: 10px;
		/* border: 1px dashed pink; */
	}
	.phase4-content .page-wrapper.level-1 {
		width: calc((100% - 70px) / 8);
	}
	.phase4-content .page-wrapper.level-1 > .page-item {
		background: #F0F0F0;
	}
	.phase4-content .page-title {
		word-wrap: break-word;
    	word-break: break-word;
	}
	.phase4-content .page-header {
		margin: 3px 2px 2px 0;
		padding: 0 0 0 2px;
		gap: 4px;
	}
	.phase4-content .page-note .page-note-editor {
		padding: 0 0 0 5px;
	}

	.phase4-content .add-page-box {
		display: none;
	}
}
