/**
 * IP Product Engine — member desk styles (0.5.0).
 * Implements the approved prototype aesthetic: ink navy, bookcloth green,
 * bronze foil on cool paper; Fraunces display + Public Sans body.
 */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,700&family=Public+Sans:wght@400;600;700&display=swap');

:root {
	--ippe-ink: #1B2433;
	--ippe-ink-soft: #3A4557;
	--ippe-cloth: #2F5D50;
	--ippe-cloth-deep: #24483E;
	--ippe-bronze: #B48A3C;
	--ippe-paper: #F4F5F2;
	--ippe-card: #FFFFFF;
	--ippe-line: #DDE1DA;
	--ippe-danger: #8C3B2E;
}

.ippe-desk {
	font-family: 'Public Sans', system-ui, sans-serif;
	background: var(--ippe-paper);
	color: var(--ippe-ink);
	padding: 18px;
	border-radius: 8px;
}
.ippe-desk h2 {
	font-family: 'Fraunces', Georgia, serif;
	font-weight: 600;
	font-size: 1.35em;
	color: var(--ippe-ink);
	margin: 0 0 10px;
}
.ippe-desk h3 {
	font-family: 'Fraunces', Georgia, serif;
	font-weight: 600;
	font-size: 1.25em;
	margin: 4px 0 2px;
}
.ippe-strip {
	background: #F0EBDD;
	border: 1px solid #E2D9C2;
	color: #6E5A28;
	font-size: 11px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	padding: 8px 12px;
	border-radius: 4px;
	margin: 0 0 16px;
}
.ippe-strip strong { color: var(--ippe-cloth-deep); }

.ippe-card {
	background: var(--ippe-card);
	border: 1px solid var(--ippe-line);
	border-radius: 6px;
	padding: 18px;
	margin: 0 0 14px;
	display: flex;
	gap: 18px;
	flex-wrap: wrap;
	align-items: flex-start;
}
.ippe-card img.attachment-medium,
.ippe-card img {
	width: 118px;
	height: auto;
	border-radius: 3px;
	box-shadow: 0 3px 10px rgba(27,36,51,0.25);
	flex-shrink: 0;
}
.ippe-card-body { flex: 1; min-width: 240px; }
.ippe-meta {
	display: inline-block;
	font-size: 10px;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	background: #EEF0EC;
	color: var(--ippe-ink-soft);
	padding: 3px 8px;
	border-radius: 3px;
	margin: 0 0 6px;
}
.ippe-card[data-status="approved"] .ippe-meta { background: #E4EEE9; color: var(--ippe-cloth-deep); }
.ippe-card[data-status="hidden"]   .ippe-meta { background: #F0EBDD; color: #7A6430; }
.ippe-card[data-status="regenerating"] .ippe-meta,
.ippe-card[data-status="generating"]   .ippe-meta { background: #F3E9D6; color: #8A6420; }

.ippe-rationale {
	background: #F7F5EE;
	border: 1px solid #EAE4D2;
	border-radius: 4px;
	padding: 10px 12px;
	font-size: 13px;
	color: var(--ippe-ink-soft);
	margin: 8px 0;
}
.ippe-rationale strong { color: var(--ippe-cloth-deep); }
.ippe-buyout {
	background: #EFF2F6;
	border: 1px solid #D9E0EA;
	border-radius: 4px;
	padding: 8px 12px;
	font-size: 12.5px;
	color: #33465E;
	margin: 8px 0;
}

.ippe-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 10px; align-items: center; }
.ippe-inline { margin: 0; display: flex; gap: 6px; align-items: center; }
.ippe-inline input[type="text"],
.ippe-inline input[type="number"] {
	border: 1px solid var(--ippe-line);
	border-radius: 4px;
	padding: 7px 9px;
	font-size: 13px;
	width: 90px;
}
.ippe-desk button,
.ippe-desk .button {
	font-family: 'Public Sans', sans-serif;
	font-weight: 600;
	font-size: 13px;
	padding: 8px 15px;
	border-radius: 4px;
	border: 1px solid var(--ippe-line);
	background: transparent;
	color: var(--ippe-ink-soft);
	cursor: pointer;
	transition: background 0.15s, color 0.15s;
}
.ippe-btn-primary { background: var(--ippe-cloth) !important; border-color: var(--ippe-cloth) !important; color: #fff !important; }
.ippe-btn-primary:hover { background: var(--ippe-cloth-deep) !important; }
.ippe-btn-bronze { background: var(--ippe-bronze) !important; border-color: var(--ippe-bronze) !important; color: #fff !important; }
.ippe-btn-danger { color: var(--ippe-danger) !important; border-color: #E3CFC9 !important; background: transparent !important; }

.ippe-section {
	background: var(--ippe-card);
	border: 1px solid var(--ippe-line);
	border-radius: 6px;
	padding: 18px;
	margin: 18px 0 0;
}
.ippe-section textarea {
	width: 100%;
	border: 1px solid var(--ippe-line);
	border-radius: 4px;
	padding: 12px;
	font-family: ui-monospace, 'SF Mono', Menlo, monospace;
	font-size: 13px;
	line-height: 1.6;
}
.ippe-section input[type="text"],
.ippe-section input[type="number"] {
	border: 1px solid var(--ippe-line);
	border-radius: 4px;
	padding: 8px 10px;
	font-size: 13.5px;
}
.ippe-section p { font-size: 13.5px; color: var(--ippe-ink-soft); }
.ippe-notice {
	background: #E4EEE9;
	border: 1px solid #CBDDD3;
	color: var(--ippe-cloth-deep);
	border-radius: 4px;
	padding: 10px 14px;
	font-size: 13.5px;
}
.ippe-files-table th { font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--ippe-ink-soft); padding: 6px 8px; }
.ippe-files-table td { font-size: 13px; padding: 8px; }
.ippe-empty { color: var(--ippe-ink-soft); font-size: 14px; }
