/* VYBE OJS Publish · Reviewer Registration – public styles (form, status page, reviewer panel) */

.tmrr {
	--tmrr-primary: #8b1e3f;
	--tmrr-accent: #b8892f;
	--tmrr-ink: #1f1b19;
	--tmrr-muted: #6b625d;
	--tmrr-line: #e3dbcf;
	--tmrr-field: #cfc5b7;
	--tmrr-soft: #faf7f2;
	--tmrr-card: #ffffff;
	--tmrr-ok: #2e7d4f;
	--tmrr-warn: #9a6200;
	--tmrr-err: #b42318;
	--tmrr-radius: 12px;
	color: var(--tmrr-ink);
	line-height: 1.6;
	font-size: 16px;
	max-width: 920px;
	margin-inline: auto;
}
.tmrr *, .tmrr *::before, .tmrr *::after { box-sizing: border-box; }
.tmrr [hidden] { display: none !important; }

/* ---------- Bilingual display ---------- */
.tmrr-lang-ta .tmrr-en,
.tmrr-lang-en .tmrr-ta { display: none !important; }
.tmrr-lang-both .tmrr-ta + .tmrr-en::before { content: " / "; opacity: .5; }
.tmrr-lang-both .tmrr-stack > .tmrr-en,
.tmrr-lang-both .tmrr-chip > span > .tmrr-en,
.tmrr-lang-both .tmrr-btn > .tmrr-en,
.tmrr-lang-both .tmrr-fchip > .tmrr-en,
.tmrr-lang-both .tmrr-badge > .tmrr-en { display: block; font-size: .84em; opacity: .82; font-weight: inherit; }
.tmrr-lang-both .tmrr-stack > .tmrr-en::before,
.tmrr-lang-both .tmrr-chip > span > .tmrr-en::before,
.tmrr-lang-both .tmrr-btn > .tmrr-en::before,
.tmrr-lang-both .tmrr-fchip > .tmrr-en::before,
.tmrr-lang-both .tmrr-badge > .tmrr-en::before { content: none; }
.tmrr-lang-both .tmrr-decl .tmrr-en { display: block; color: var(--tmrr-muted); font-size: .9em; margin-top: 2px; }
.tmrr-lang-both .tmrr-decl .tmrr-en::before { content: none; }

/* ---------- Building blocks ---------- */
.tmrr-intro { background: var(--tmrr-soft); border-left: 4px solid var(--tmrr-accent); border-radius: 0 var(--tmrr-radius) var(--tmrr-radius) 0; padding: 14px 18px; margin-bottom: 14px; }
.tmrr-lang-both .tmrr-intro > .tmrr-en { display: block; margin-top: 6px; font-size: .92em; }
.tmrr-lang-both .tmrr-intro > .tmrr-en::before { content: none; }
.tmrr-legend { font-size: .88em; color: var(--tmrr-muted); margin: 0 0 14px; }
.tmrr-muted { color: var(--tmrr-muted); }

.tmrr-section,
.tmrr-card,
.tmrr-lookup {
	background: var(--tmrr-card);
	border: 1px solid var(--tmrr-line);
	border-radius: var(--tmrr-radius);
	padding: 20px 20px 22px;
	margin-bottom: 18px;
}
.tmrr-section-head { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.tmrr-step {
	flex: none; width: 34px; height: 34px; border-radius: 50%;
	display: grid; place-items: center;
	background: var(--tmrr-primary); color: #fff; font-weight: 700; font-size: 15px;
}
.tmrr-section-title { margin: 0; font-size: 1.12em; line-height: 1.35; color: var(--tmrr-primary); font-weight: 700; }
.tmrr-section-help { margin: -6px 0 14px; color: var(--tmrr-muted); font-size: .92em; }

.tmrr-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 16px 16px; }
.tmrr-col-full { grid-column: span 12; }
.tmrr-col-half { grid-column: span 6; }
.tmrr-col-third { grid-column: span 4; }
.tmrr-col-quarter { grid-column: span 3; }
@media (max-width: 700px) {
	.tmrr-col-half, .tmrr-col-third { grid-column: span 12; }
	.tmrr-col-quarter { grid-column: span 6; }
	.tmrr-section, .tmrr-card, .tmrr-lookup { padding: 16px 14px 18px; }
}

.tmrr-label { display: block; font-weight: 600; font-size: .95em; margin-bottom: 6px; line-height: 1.4; }
.tmrr-req { color: var(--tmrr-err); font-weight: 700; }
.tmrr-lang-both .tmrr-en .tmrr-req { display: none; }
.tmrr-help { margin: 6px 0 0; font-size: .85em; color: var(--tmrr-muted); line-height: 1.45; }
.tmrr-error { margin: 6px 0 0; font-size: .87em; color: var(--tmrr-err); font-weight: 600; }

.tmrr .tmrr-input {
	display: block; width: 100%; min-height: 44px;
	padding: 10px 12px; font: inherit; font-size: 16px; line-height: 1.4;
	color: var(--tmrr-ink); background: #fff;
	border: 1px solid var(--tmrr-field); border-radius: 8px;
	box-shadow: none; transition: border-color .15s, box-shadow .15s;
}
.tmrr textarea.tmrr-input { min-height: 84px; resize: vertical; }
.tmrr select.tmrr-input { appearance: auto; }
.tmrr .tmrr-input:focus { outline: none; border-color: var(--tmrr-primary); box-shadow: 0 0 0 3px color-mix(in srgb, var(--tmrr-primary) 18%, transparent); }
.tmrr .tmrr-input[readonly] { background: var(--tmrr-soft); }
.tmrr-field.has-error .tmrr-input,
.tmrr-field.has-error .tmrr-choices,
.tmrr-field.has-error .tmrr-pub .tmrr-input:invalid { border-color: var(--tmrr-err); }
.tmrr-field.has-error .tmrr-choices { border: 1px solid var(--tmrr-err); border-radius: 10px; padding: 6px; }

.tmrr-inline { display: flex; gap: 8px; align-items: stretch; }
.tmrr-inline .tmrr-input { flex: 1; min-width: 0; }

/* Buttons */
.tmrr .tmrr-btn {
	display: inline-flex; flex-direction: column; align-items: center; justify-content: center;
	min-height: 44px; padding: 8px 16px; border-radius: 8px;
	font: inherit; font-weight: 600; font-size: .95em; line-height: 1.25; text-align: center; text-decoration: none;
	border: 1px solid var(--tmrr-primary); background: var(--tmrr-primary); color: #fff; cursor: pointer;
	transition: filter .15s, background .15s; white-space: normal;
}
.tmrr .tmrr-btn:hover { filter: brightness(1.08); color: #fff; }
.tmrr .tmrr-btn:focus-visible { outline: 3px solid color-mix(in srgb, var(--tmrr-primary) 35%, transparent); outline-offset: 2px; }
.tmrr .tmrr-btn-ghost { background: #fff; color: var(--tmrr-primary); }
.tmrr .tmrr-btn-ghost:hover { background: var(--tmrr-soft); color: var(--tmrr-primary); filter: none; }
.tmrr .tmrr-btn-sm { min-height: 36px; padding: 6px 12px; font-size: .9em; flex-direction: row; gap: 4px; margin-top: 10px; }
.tmrr-lang-both .tmrr-btn-sm > .tmrr-en { display: inline !important; font-size: 1em; }
.tmrr-lang-both .tmrr-btn-sm > .tmrr-en::before { content: " / "; opacity: .5; }
.tmrr .tmrr-btn-lg { min-height: 52px; padding: 10px 28px; font-size: 1.05em; }
.tmrr .tmrr-btn[disabled] { opacity: .6; cursor: progress; }

/* OTP */
.tmrr-otp-verify { margin-top: 8px; }
.tmrr-otp-code { letter-spacing: 6px; font-weight: 700; max-width: 220px; }
.tmrr-otp-status { margin: 6px 0 0; font-size: .87em; color: var(--tmrr-muted); }
.tmrr-otp-status:empty { display: none; }
.tmrr-otp-status.is-ok { color: var(--tmrr-ok); font-weight: 600; }
.tmrr-otp-status.is-err { color: var(--tmrr-err); font-weight: 600; }
.tmrr-otp.is-verified .tmrr-input { border-color: var(--tmrr-ok); background: #f3faf5; }
.tmrr-otp-change { background: none; border: 0; padding: 0; margin-left: 6px; color: var(--tmrr-primary); text-decoration: underline; cursor: pointer; font: inherit; }

/* ORCID */
.tmrr-orcid { position: relative; }
.tmrr-orcid .tmrr-input { padding-left: 44px; font-variant-numeric: tabular-nums; letter-spacing: .5px; }
.tmrr-orcid-badge {
	position: absolute; left: 10px; top: 50%; transform: translateY(-50%);
	width: 24px; height: 24px; border-radius: 50%; background: #a6ce39; color: #fff;
	font: 700 11px/24px Arial, sans-serif; text-align: center;
}

/* Choice chips */
.tmrr-choices { display: flex; flex-wrap: wrap; gap: 8px; }
.tmrr-chip {
	display: inline-flex; align-items: flex-start; gap: 8px; cursor: pointer;
	padding: 9px 12px; border: 1px solid var(--tmrr-field); border-radius: 10px; background: #fff;
	font-size: .93em; line-height: 1.35; transition: border-color .15s, background .15s;
}
.tmrr-chip input { margin: 2px 0 0; accent-color: var(--tmrr-primary); width: 16px; height: 16px; flex: none; }
.tmrr-chip:hover { border-color: var(--tmrr-primary); }
.tmrr-chip:has(input:checked) { border-color: var(--tmrr-primary); background: color-mix(in srgb, var(--tmrr-primary) 7%, #fff); }
.tmrr-chip:has(input:focus-visible) { box-shadow: 0 0 0 3px color-mix(in srgb, var(--tmrr-primary) 20%, transparent); }
.tmrr-type-checkboxes[data-field="subjects"] .tmrr-choices { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); }

/* Publications */
.tmrr-pubs { display: grid; gap: 12px; }
.tmrr-pub {
	position: relative; margin: 0; padding: 14px 44px 14px 14px;
	border: 1px solid var(--tmrr-line); border-radius: 10px; background: var(--tmrr-soft);
	display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) 112px; gap: 10px 12px;
}
.tmrr-pub > legend.tmrr-pub-no {
	position: absolute; top: -11px; left: 12px; padding: 0 8px; margin: 0;
	background: var(--tmrr-primary); color: #fff; border-radius: 10px; font-size: 12px; font-weight: 700; line-height: 20px; float: none; width: auto;
}
.tmrr-pub label { display: block; margin: 0; }
.tmrr-pub-link { grid-column: 1 / -1; }
.tmrr-sub-label { display: block; font-size: .82em; font-weight: 600; color: var(--tmrr-muted); margin-bottom: 4px; line-height: 1.3; }
.tmrr-pub .tmrr-input { min-height: 40px; padding: 8px 10px; }
.tmrr-pub-remove {
	position: absolute; top: 8px; right: 8px; width: 30px; height: 30px; border-radius: 50%;
	border: 1px solid var(--tmrr-line); background: #fff; color: var(--tmrr-muted); font-size: 18px; line-height: 1; cursor: pointer;
}
.tmrr-pub-remove:hover { color: var(--tmrr-err); border-color: var(--tmrr-err); }
.tmrr-pub[data-locked] .tmrr-pub-remove { display: none; }
@media (max-width: 700px) {
	.tmrr-pub { grid-template-columns: minmax(0, 1fr) 112px; padding-right: 14px; padding-top: 18px; }
	.tmrr-pub-title, .tmrr-pub-link { grid-column: 1 / -1; }
}

/* File */
.tmrr-file .tmrr-input { padding: 9px; background: var(--tmrr-soft); }

/* Declarations */
.tmrr-decls { display: grid; gap: 10px; }
.tmrr-decl { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border-radius: 10px; border: 1px solid var(--tmrr-line); background: #fff; cursor: pointer; line-height: 1.5; font-size: .94em; }
.tmrr-decl input { margin-top: 4px; width: 18px; height: 18px; flex: none; accent-color: var(--tmrr-primary); }
.tmrr-decl:has(input:checked) { border-color: color-mix(in srgb, var(--tmrr-ok) 55%, #fff); background: #f6fbf7; }
.tmrr-decl a { color: var(--tmrr-primary); }
.tmrr-decl:not(.is-required) { border-style: dashed; }

/* Honeypot */
.tmrr-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* Submit */
.tmrr-submit-bar { display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 8px 0 4px; }
.tmrr-form-status { margin: 0; text-align: center; font-weight: 600; }
.tmrr-form-status:empty { display: none; }
.tmrr-form-status.is-err { color: var(--tmrr-err); }
.tmrr-alert { padding: 10px 14px; border-radius: 8px; margin: 0 0 14px; }
.tmrr-alert-error { background: #fdeeee; color: var(--tmrr-err); }

/* Success */
.tmrr-success { text-align: center; background: var(--tmrr-card); border: 1px solid var(--tmrr-line); border-top: 5px solid var(--tmrr-ok); border-radius: var(--tmrr-radius); padding: 30px 20px; }
.tmrr-success h3 { margin: 6px 0 10px; color: var(--tmrr-ok); }
.tmrr-success-icon { width: 60px; height: 60px; margin: 0 auto; border-radius: 50%; background: var(--tmrr-ok); color: #fff; font-size: 30px; line-height: 60px; }
.tmrr-appno { font-size: 1.5em; font-weight: 700; letter-spacing: 1px; color: var(--tmrr-primary); margin: 0 0 12px; }

/* ---------- Status page ---------- */
.tmrr-status-head { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.tmrr-status-head > div:nth-child(2) { flex: 1; min-width: 180px; }
.tmrr-status-name { font-weight: 700; font-size: 1.15em; line-height: 1.3; }
.tmrr-status-name-ta { color: var(--tmrr-muted); }
.tmrr-avatar {
	flex: none; width: 52px; height: 52px; border-radius: 50%;
	display: grid; place-items: center; font-weight: 700; font-size: 17px; letter-spacing: .5px;
	color: var(--tmrr-primary); background: color-mix(in srgb, var(--tmrr-accent) 22%, #fff);
	border: 2px solid color-mix(in srgb, var(--tmrr-accent) 55%, #fff);
}
.tmrr-badge { display: inline-block; padding: 5px 12px; border-radius: 999px; font-size: .85em; font-weight: 700; line-height: 1.3; text-align: center; background: #eee; color: #444; }
.tmrr-badge-pending { background: #fff4dc; color: var(--tmrr-warn); }
.tmrr-badge-on_hold { background: #e9f1fb; color: #1f5fa8; }
.tmrr-badge-approved { background: #e7f5ec; color: var(--tmrr-ok); }
.tmrr-badge-rejected, .tmrr-badge-revoked { background: #fdeeee; color: var(--tmrr-err); }
.tmrr-badge-expired { background: #efefef; color: #555; }

.tmrr-steps { list-style: none; margin: 20px 0 8px; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; counter-reset: s; }
.tmrr-steps li { position: relative; padding-top: 22px; font-size: .9em; line-height: 1.35; color: var(--tmrr-muted); }
.tmrr-steps li::before { content: ""; position: absolute; top: 7px; left: 14px; right: -8px; height: 2px; background: var(--tmrr-line); }
.tmrr-steps li:last-child::before { display: none; }
.tmrr-steps li.is-done { color: var(--tmrr-ink); }
.tmrr-steps li.is-done::before { background: var(--tmrr-ok); }
.tmrr-step-dot { position: absolute; top: 0; left: 0; width: 16px; height: 16px; border-radius: 50%; background: #fff; border: 2px solid var(--tmrr-line); z-index: 1; }
.tmrr-steps li.is-done .tmrr-step-dot { background: var(--tmrr-ok); border-color: var(--tmrr-ok); }
.tmrr-steps small { display: block; margin-top: 2px; }
.tmrr-status-msg { margin: 14px 0; }
.tmrr-note { margin: 0 0 14px; padding: 10px 14px; border-left: 3px solid var(--tmrr-accent); background: var(--tmrr-soft); border-radius: 0 8px 8px 0; font-size: .95em; }
.tmrr-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; margin: 0 0 16px; }
.tmrr-facts > div { background: var(--tmrr-soft); border-radius: 10px; padding: 10px 12px; }
.tmrr-facts dt { font-size: .82em; color: var(--tmrr-muted); }
.tmrr-facts dd { margin: 0; font-weight: 700; white-space: nowrap; }
.tmrr-nowrap { white-space: nowrap; }
.tmrr-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }

/* ---------- Reviewer panel ---------- */
.tmrr-panel { max-width: 1140px; }
.tmrr-panel-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 18px; }
.tmrr-panel-stats > div { background: var(--tmrr-soft); border: 1px solid var(--tmrr-line); border-radius: var(--tmrr-radius); padding: 12px; text-align: center; }
.tmrr-panel-stats strong { display: block; font-size: 1.7em; line-height: 1.1; color: var(--tmrr-primary); }
.tmrr-panel-stats span { font-size: .86em; color: var(--tmrr-muted); }
@media (max-width: 600px) { .tmrr-panel-stats { grid-template-columns: repeat(2, 1fr); } }

.tmrr-panel-tools { margin-bottom: 16px; display: grid; gap: 10px; }
.tmrr-filter-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.tmrr .tmrr-fchip {
	display: inline-flex; flex-direction: column; align-items: flex-start; gap: 0;
	padding: 6px 12px; border-radius: 999px; border: 1px solid var(--tmrr-field); background: #fff;
	font: inherit; font-size: .85em; line-height: 1.3; cursor: pointer; color: var(--tmrr-ink); text-align: left;
}
.tmrr-lang-both .tmrr-fchip { border-radius: 12px; }
.tmrr .tmrr-fchip.is-active { background: var(--tmrr-primary); border-color: var(--tmrr-primary); color: #fff; }
.tmrr-count { font-size: .85em; opacity: .7; }
.tmrr-panel-group { margin: 22px 0 10px; color: var(--tmrr-primary); font-size: 1.05em; }

.tmrr-panel-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(270px, 1fr)); gap: 12px; }
.tmrr-rcard { display: flex; gap: 12px; align-items: flex-start; padding: 14px; background: var(--tmrr-card); border: 1px solid var(--tmrr-line); border-radius: var(--tmrr-radius); margin: 0; }
.tmrr-rcard-body { min-width: 0; }
.tmrr-rcard-name { font-weight: 700; line-height: 1.3; }
.tmrr-rcard-ta { font-size: .9em; color: var(--tmrr-muted); }
.tmrr-rcard-meta { font-size: .88em; color: var(--tmrr-muted); margin-top: 2px; line-height: 1.4; }
.tmrr-rcard-inst { font-size: .9em; line-height: 1.4; margin-top: 2px; }
.tmrr-rcard-tags { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 8px; }
.tmrr-tag { font-size: .76em; padding: 2px 8px; border-radius: 999px; background: color-mix(in srgb, var(--tmrr-accent) 16%, #fff); color: #6b4d12; line-height: 1.5; }
.tmrr-orcid-link { display: inline-block; width: 18px; height: 18px; border-radius: 50%; background: #a6ce39; color: #fff !important; font: 700 9px/18px Arial, sans-serif; text-align: center; text-decoration: none !important; vertical-align: 1px; }
