:root{
  --sap-navy:#102f63;
  --sap-deep:#172a53;
  --sap-pink:#ef3b79;
  --sap-coral:#ff7957;
  --sap-soft:#f4f7fa;
  --sap-line:#dde4eb;
  --sap-text:#17345d;
  --sap-muted:#687991;
  --sap-teal:#0b776b;
}
html,body{min-height:100%}
body.sap-submissions-body{
  background:#fff;
  color:var(--sap-text);
  font-family:"DM Sans",Arial,sans-serif;
}
.sap-main-site-header{position:relative;z-index:30;background:#fff;border-bottom:1px solid #eef0f3}
.sap-main-site-header .navbar{background:#fff!important}
.sap-main-site-header .nav-link{font-weight:700!important;letter-spacing:.01em}
.sap-main-site-footer{margin-top:0;background:var(--sap-deep)!important;color:#fff!important}
.sap-main-site-footer .copyright{padding:2.3rem 1.5rem;text-align:right}
.sap-main-site-footer .mbr-copy{color:#fff!important;margin:0}

.sap-submissions-public{
  background:linear-gradient(90deg,#fff 0,#fff 12%,#f4f7fa 12%,#f4f7fa 88%,#fff 88%,#fff 100%);
  padding:4.2rem 1.25rem 5rem;
  min-height:650px;
}
.sap-submissions-public-shell{max-width:680px;margin:0 auto}
.sap-auth-heading{margin-bottom:1.25rem}
.sap-auth-heading .sap-kicker{color:var(--sap-pink);font-size:.72rem;letter-spacing:.18em;font-weight:800;margin:0 0 .35rem}
.sap-auth-heading span{font-size:.95rem;color:var(--sap-muted)}
.sap-auth-card{
  background:#fff;
  border:1px solid var(--sap-line);
  border-radius:18px;
  padding:2.8rem 3rem;
  box-shadow:0 16px 44px rgba(17,46,82,.08);
}
.sap-auth-card h1,.sap-auth-card h2{font-weight:600;color:#0f315f}
.sap-auth-card label{display:block;margin-top:1rem;margin-bottom:.35rem;font-weight:650;color:#17345d}
.sap-auth-card input[type="email"],
.sap-auth-card input[type="password"],
.sap-auth-card input[type="text"]{
  width:100%;
  min-height:48px;
  border:1px solid #b9c9d8;
  border-radius:4px;
  padding:.65rem .8rem;
  font:inherit;
}
.sap-auth-card button{
  background:#0e3569;
  color:#fff;
  border:0;
  border-radius:2px;
  padding:.72rem 1.2rem;
  font-weight:700;
  margin-top:1.15rem;
}
.sap-auth-card a{color:#0b617c}

.sap-app-toolbar{background:#fff;border-bottom:1px solid var(--sap-line);position:relative;z-index:20}
.sap-app-toolbar-inner{max-width:1240px;margin:0 auto;padding:.75rem 1.5rem;display:flex;align-items:center;gap:1.8rem}
.sap-app-name{font-weight:800;color:#123b75;text-decoration:none}
.sap-app-nav{display:flex;gap:1.25rem;align-items:center}
.sap-app-nav a{color:#263f67;text-decoration:none;font-weight:600;font-size:.9rem}
.sap-app-user{margin-left:auto;display:flex;align-items:center;gap:.9rem;font-size:.9rem}
.sap-app-user form{margin:0}
.sap-logout{border:1px solid #11396f;background:#fff;color:#11396f;padding:.45rem .85rem;border-radius:2px;font-weight:700}

.sap-application-main{
  max-width:1240px;
  margin:0 auto;
  min-height:650px;
  padding:2.7rem 1.5rem 4rem;
  background:#fff;
}
.sap-application-main h1{color:#11386d;font-weight:600;margin-bottom:.6rem}
.sap-application-main .card{
  border:1px solid var(--sap-line)!important;
  border-radius:8px!important;
  box-shadow:none!important;
  padding:1.5rem!important;
  background:#fff!important;
  color:var(--sap-text)!important;
}
.sap-application-main .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.sap-application-main a.card{text-decoration:none}
.sap-application-main input,.sap-application-main select,.sap-application-main textarea{
  border:1px solid #b9c9d8!important;
  border-radius:3px!important;
  padding:.6rem .7rem!important;
}
.sap-application-main button,.sap-application-main .btn{
  border-radius:2px!important;
  background:#103c73!important;
  color:#fff!important;
}
.sap-system-message{max-width:1240px;margin:0 auto 1rem;padding:.85rem 1rem;border-left:4px solid #0c7d67;background:#eef9f6}
.sap-system-message.error{border-left-color:#b63838;background:#fff1f1}

@media(max-width:991px){
 .sap-submissions-public{background:#f4f7fa}
 .sap-auth-card{padding:2rem 1.25rem}
 .sap-app-toolbar-inner{align-items:flex-start;flex-direction:column;gap:.75rem}
 .sap-app-user{margin-left:0}
}

/* SAP_STAGE2_1_UI_REFINEMENT_V1_BEGIN */

/* Wider editorial workspace while preserving the SAP institutional shell */
.sap-application-main{
    max-width:1480px !important;
    padding:2.8rem 3.25rem 4.5rem !important;
}
.sap-page-heading{
    margin-bottom:1.65rem;
}
.sap-page-heading .sap-kicker{
    margin-bottom:.45rem;
}
.sap-page-heading h1{
    font-size:2.15rem !important;
    line-height:1.12 !important;
    margin:0 0 .55rem !important;
}
.sap-page-heading > p:not(.sap-kicker){
    font-size:.96rem;
    line-height:1.6;
    margin:0;
    color:#536b82;
}

/* Less oversized section typography */
.sap-application-main .card h2{
    font-size:1.55rem !important;
    line-height:1.2 !important;
    margin:0 0 1.35rem !important;
    font-weight:500 !important;
}
.sap-application-main .card h3{
    font-size:1.17rem !important;
    line-height:1.3 !important;
    margin:.25rem 0 1rem !important;
}
.sap-application-main .card p,
.sap-application-main .card li{
    font-size:.91rem;
    line-height:1.62;
}

/* More breathing room around cards and fields */
.sap-application-main .card{
    padding:2rem 2.25rem !important;
    margin-bottom:1.45rem !important;
}
#submissionForm .card{
    padding:2.05rem 2.35rem !important;
}
.sap-application-main label{
    display:flex;
    flex-direction:column;
    gap:.48rem;
    margin:0 0 1.25rem;
    font-size:.84rem;
    line-height:1.35;
    font-weight:600;
    color:#17345d;
}
.sap-application-main input:not([type="radio"]):not([type="checkbox"]),
.sap-application-main select,
.sap-application-main textarea{
    width:100% !important;
    min-height:45px;
    padding:.7rem .82rem !important;
    font-size:.91rem !important;
    line-height:1.45;
    background:#fff;
}
.sap-application-main textarea{
    min-height:145px;
    resize:vertical;
}
.sap-application-main input[type="file"]{
    min-height:48px;
    padding:.56rem .7rem !important;
}
.sap-application-main small{
    font-size:.8rem;
    line-height:1.55;
    color:#61768b;
}
#submissionForm .card > p:last-child{
    margin-bottom:0;
}

/* Better use of horizontal space */
.sap-application-main .grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    column-gap:1.55rem !important;
    row-gap:.35rem !important;
}
#submissionForm .sap-family-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:1.15rem !important;
}
#submissionForm .sap-family-card{
    min-height:64px;
    padding:1rem 1.15rem !important;
    justify-content:center;
    margin:0;
    font-size:.91rem;
}
#submissionForm .family-block{
    margin-top:1.55rem !important;
    max-width:760px;
}
#submissionForm [name="language"]{
    max-width:360px;
}
#submissionForm [name="manuscript"]{
    max-width:760px;
}

/* Manuscript section spacing */
#submissionForm .card:nth-of-type(2) > label{
    margin-bottom:1.45rem;
}
#submissionForm .card:nth-of-type(2) > p{
    margin-top:-.45rem;
    max-width:900px;
}

/* Author blocks */
#authors{
    margin-top:1rem;
}
.author-block{
    padding:1.8rem 0 .75rem !important;
}
.author-block .grid{
    align-items:start;
}
.author-block label{
    margin-bottom:1rem;
}
.author-block .removeAuthor{
    margin-top:.45rem !important;
}
#addAuthor{
    width:auto !important;
    padding:.68rem 1.05rem !important;
    margin-top:.65rem;
}
#submissionForm > .card:last-child{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:2rem;
}
#submissionForm > .card:last-child p{
    margin:0;
}
#submissionForm > .card:last-child button[type="submit"]{
    width:auto !important;
    min-width:190px;
    flex:0 0 auto;
    padding:.72rem 1.4rem !important;
}

/* Submission detail */
.sap-submission-summary{
    max-width:none;
}
.sap-application-main .card + .card{
    margin-top:0;
}

/* Avoid overly wide text lines */
.sap-application-main .card > p{
    max-width:1100px;
}

/* Buttons: institutional, compact, not pill-shaped */
.sap-application-main button,
.sap-application-main .btn{
    border-radius:2px !important;
    min-height:38px;
    font-size:.84rem !important;
    line-height:1.2;
    padding:.62rem 1rem !important;
}

/* Responsive */
@media(max-width:1180px){
    .sap-application-main{
        padding:2.4rem 2rem 4rem !important;
    }
    .sap-application-main .grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
}
@media(max-width:760px){
    .sap-application-main{
        padding:2rem 1rem 3rem !important;
    }
    .sap-application-main .card,
    #submissionForm .card{
        padding:1.45rem 1.15rem !important;
    }
    .sap-application-main .grid,
    #submissionForm .sap-family-grid{
        grid-template-columns:1fr !important;
    }
    #submissionForm > .card:last-child{
        display:block;
    }
    #submissionForm > .card:last-child button[type="submit"]{
        width:100% !important;
        margin-top:1rem;
    }
}

/* SAP_STAGE2_1_UI_REFINEMENT_V1_END */
