/* Compact registration presentation. Native OJS fields and validation remain intact. */
body.pkp_page_user.pkp_op_register .pkp_structure_page { background:#f3f7f9; }
body.pkp_op_register .pkp_structure_content { width:100%; max-width:1120px; padding:18px 24px 32px; }
body.pkp_op_register .pkp_structure_main { width:100%; padding:0; border:0; }
body.pkp_op_register .pkp_structure_main::before,body.pkp_op_register .pkp_structure_main::after { display:none; }
body.pkp_op_register .pkp_structure_sidebar { display:none; }
.page_register { color:#193b4d; }
.page_register * { box-sizing:border-box; }
.page_register .cmp_breadcrumbs { margin:0 0 10px; }
.page_register .cmp_breadcrumbs ol { margin:0; }
.page_register h1 { font-size:28px; line-height:34px; margin:0 0 5px; letter-spacing:-.025em; }
.page_register > p { margin:0 0 14px; font-size:12px; color:#637987; line-height:18px; }
.page_register #register { display:grid; grid-template-columns:1fr 1fr; gap:16px 24px; width:100%; max-width:none; margin:0; padding:24px; background:#fff; border:1px solid #dfe8ed; border-radius:20px; box-shadow:0 12px 36px #173b4d08; }
.page_register #register > * { grid-column:1 / -1; min-width:0; }
.page_register #register > .identity { grid-column:1; }
.page_register #register > .login { grid-column:2; }
.page_register #register fieldset { padding:0; margin:0; border:0; min-width:0; }
.page_register #register legend { width:100%; padding:0 0 10px; margin:0; font-size:15px; line-height:22px; font-weight:700; color:#17627a; }
.page_register #register .fields { margin:0; padding:0; min-width:0; }
.page_register #register .identity .fields,.page_register #register .login .fields { display:grid; grid-template-columns:1fr 1fr; gap:12px 14px; }
.page_register #register .fields > div { margin:0; min-width:0; padding:0; }
.page_register #register .identity .affiliation,.page_register #register .identity .country { grid-column:1 / -1; }
.page_register #register label { display:block; margin:0; font-size:12px; line-height:18px; }
.page_register #register .label { display:block; margin:0 0 5px; font-size:12px; line-height:18px; color:#294858; }
.page_register #register input:not([type=checkbox]):not([type=hidden]),.page_register #register select,.page_register #register textarea { display:block; width:100%; max-width:none; height:42px; padding:9px 12px; border:1px solid #ccdae2; border-radius:9px; background:#fbfdfe; color:#17394b; font-size:14px; box-shadow:none; }
.page_register #register input:focus,.page_register #register select:focus,.page_register #register textarea:focus { outline:2px solid #12839a; outline-offset:1px; background:#fff; }
.page_register #register .description { display:block; margin:6px 0 0; font-size:11px; line-height:16px; color:#647985; }
.page_register #register .consent { border-top:1px solid #e7edf1; padding-top:14px; }
.page_register #register .consent .fields + .fields { margin-top:8px; }
.page_register #register .optin label { display:flex; align-items:flex-start; gap:8px; font-size:12px; line-height:18px; }
.page_register #register .optin input[type=checkbox] { flex:0 0 16px; width:16px; height:16px; margin:1px 0 0; accent-color:#087b91; }
.page_register #register .reviewer .fields { display:grid; grid-template-columns:1fr 1fr; gap:12px 24px; align-items:start; }
.page_register #register .reviewer .optin label + label { margin-top:8px; }
.page_register #register .buttons { display:flex; align-items:center; gap:18px; margin:0; padding-top:12px; border-top:1px solid #e7edf1; }
.page_register #register .buttons::before,.page_register #register .buttons::after { display:none; }
.page_register #register .submit { min-height:42px; padding:10px 28px; border:0; border-radius:10px; background:#087b91; color:#fff; font-size:14px; font-weight:600; box-shadow:none; }
.page_register #register .submit:hover { background:#066579; }
.page_register #register .buttons .login { margin:0; color:#087b91; font-size:13px; }
.page_register #register .form_error { grid-column:1 / -1; }
@media(max-width:760px) { .page_register #register { gap:18px; padding:20px; } .page_register #register > .identity,.page_register #register > .login { grid-column:1 / -1; } }
@media(max-width:480px) { body.pkp_op_register .pkp_structure_content { padding:16px 14px 28px; } .page_register #register { padding:18px; border-radius:16px; } .page_register #register .identity .fields,.page_register #register .login .fields,.page_register #register .reviewer .fields { grid-template-columns:1fr; } .page_register #register input:not([type=checkbox]):not([type=hidden]),.page_register #register select { font-size:16px; } }
@media(max-width:360px) { .page_register #register .g-recaptcha { transform:scale(.8); transform-origin:left top; } }
/* Keep the complete journal form within a typical desktop viewport. */
.page_register #register .identity .affiliation,.page_register #register .identity .country { grid-column:auto; }
.page_register #register .optin label { display:block; }
.page_register #register .optin input[type=checkbox] { display:inline-block; vertical-align:top; margin:1px 7px 0 0; }
@media(min-width:761px) { .page_register #register { gap:12px 24px; padding:20px 24px; } .page_register #register .description { font-size:11px; line-height:15px; } .page_register #register .consent { padding-top:12px; } }

.page_register .register_card_heading { padding-bottom:12px; border-bottom:1px solid #e5edf1; }
.page_register .register_card_heading h1 { margin:0; font-size:25px; line-height:32px; }
.page_register #register .register_validation_summary,.page_register #register #formErrors { padding:14px 16px; border:1px solid #f0c9cc; border-left:4px solid #c44350; border-radius:10px; background:#fff5f5; color:#8c2834; font-size:13px; line-height:20px; }
.page_register #register .register_validation_summary[hidden] { display:none; }
.page_register #register .register_validation_summary strong { display:block; }
.page_register #register .register_field_error { display:block; margin-top:6px; color:#b63343; font-size:12px; line-height:17px; }
.page_register #register [aria-invalid=true] { border-color:#c44350 !important; background:#fffafa !important; }
.page_register #formErrors .pkp_form_error_list { margin:8px 0 0; padding-left:18px; }
.page_register #formErrors a { color:#8c2834; }
