/* Student Exchange Hub — mobile-first styles */
:root {
	--seh-primary: #1a56db;
	--seh-accent: #f59e0b;
	--seh-swap: #10b981;
	--seh-donate: #8b5cf6;
	--seh-bg: #f8fafc;
	--seh-text: #1e293b;
	--seh-border: #e2e8f0;
}

.seh-dashboard, .seh-grid, .seh-card, .seh-actions,
#seh-submit-listing-form, #seh-item-request-form, #seh-id-upload-form {
	box-sizing: border-box;
}

.seh-verify-notice {
	background: #fffbeb;
	border: 1px solid var(--seh-accent);
	border-radius: 8px;
	padding: 16px;
	margin-bottom: 16px;
}

.seh-privacy-notice {
	background: #ecfdf5;
	border: 1px solid var(--seh-swap);
	border-radius: 8px;
	padding: 12px 14px;
	margin-bottom: 14px;
	font-size: 13px;
	color: #065f46;
}

.seh-safety-reminder {
	font-size: 13px;
	color: #92400e;
	background: #fffbeb;
	border-radius: 6px;
	padding: 8px 10px;
	margin: 8px 0;
}

.seh-safety-tips {
	background: #fffbeb;
	border: 1px solid var(--seh-accent);
	border-radius: 8px;
	padding: 12px 14px;
	margin-top: 10px;
	font-size: 13px;
	color: #78350f;
}

.seh-safety-tips ul {
	margin: 6px 0 0;
	padding-left: 18px;
}

.seh-safety-tips li {
	margin-bottom: 4px;
}

.seh-dashboard-actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-bottom: 24px;
	padding-bottom: 20px;
	border-bottom: 1px solid var(--seh-border);
}

.seh-dashboard-actions .seh-btn {
	text-decoration: none;
	display: inline-block;
	font-size: 14px;
	padding: 12px 18px;
	flex: 1 1 200px;
	text-align: center;
}

@media (max-width: 480px) {
	.seh-dashboard-actions {
		flex-direction: column;
	}
	.seh-dashboard-actions .seh-btn {
		flex: 1 1 auto;
	}
}

.seh-btn-secondary {
	background: #fff !important;
	color: var(--seh-primary) !important;
	border: 2px solid var(--seh-primary) !important;
}

.seh-dashboard-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 4px;
	margin-bottom: 16px;
}

.seh-tab-btn {
	background: #fff;
	border: 1px solid var(--seh-border);
	border-radius: 20px;
	padding: 8px 14px;
	font-size: 14px;
	cursor: pointer;
}

.seh-tab-btn.active {
	background: var(--seh-primary);
	color: #fff;
	border-color: var(--seh-primary);
}

.seh-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.seh-list li {
	padding: 10px 0;
	border-bottom: 1px solid var(--seh-border);
}

.seh-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}

@media (min-width: 600px) {
	.seh-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (min-width: 900px) {
	.seh-grid { grid-template-columns: repeat(4, 1fr); }
}

.seh-card {
	background: #fff;
	border: 1px solid var(--seh-border);
	border-radius: 10px;
	overflow: hidden;
	position: relative;
	display: flex;
	flex-direction: column;
}

.seh-card img {
	width: 100%;
	height: 120px;
	object-fit: cover;
}

.seh-card h3 {
	font-size: 14px;
	margin: 8px 10px 4px;
}

.seh-card h3 a {
	color: var(--seh-text);
	text-decoration: none;
}

.seh-meta {
	font-size: 12px;
	color: #64748b;
	margin: 0 10px 8px;
}

.seh-badge {
	position: absolute;
	top: 8px;
	left: 8px;
	font-size: 11px;
	color: #fff;
	padding: 2px 8px;
	border-radius: 12px;
}

.seh-badge-swap { background: var(--seh-swap); }
.seh-badge-donate { background: var(--seh-donate); }

.seh-actions {
	display: flex;
	gap: 6px;
	padding: 0 10px 10px;
	margin-top: auto;
}

.seh-actions button {
	flex: 1;
	background: var(--seh-bg);
	border: 1px solid var(--seh-border);
	border-radius: 6px;
	padding: 6px 4px;
	font-size: 12px;
	cursor: pointer;
}

.seh-actions button.active {
	background: var(--seh-primary);
	color: #fff;
}

#seh-submit-listing-form, #seh-item-request-form, #seh-id-upload-form {
	display: flex;
	flex-direction: column;
	gap: 10px;
	max-width: 480px;
}

#seh-submit-listing-form input,
#seh-submit-listing-form select,
#seh-submit-listing-form textarea,
#seh-item-request-form input,
#seh-item-request-form textarea {
	padding: 10px;
	border: 1px solid var(--seh-border);
	border-radius: 6px;
	font-size: 14px;
	width: 100%;
}

.seh-btn {
	background: var(--seh-primary);
	color: #fff;
	border: none;
	border-radius: 6px;
	padding: 12px;
	font-size: 15px;
	cursor: pointer;
}

.seh-form-msg {
	font-size: 13px;
	color: var(--seh-swap);
}

.seh-declaration {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: 12px;
	color: #64748b;
	line-height: 1.4;
}

.seh-declaration input {
	width: auto;
	margin-top: 3px;
}

.seh-requesters {
	margin-top: 6px;
	font-size: 13px;
	background: var(--seh-bg);
	border-radius: 6px;
	padding: 8px 10px;
}

.seh-requesters ul {
	list-style: none;
	padding: 0;
	margin: 6px 0 0;
}

.seh-requesters li {
	margin-bottom: 6px;
}

.seh-select-recipient-btn {
	background: var(--seh-primary);
	color: #fff;
	border: none;
	border-radius: 4px;
	padding: 4px 8px;
	font-size: 12px;
	margin-left: 6px;
	cursor: pointer;
}
