/* Shared account navigation and dedicated login/register pages. */
.home-nav .home-login,.home-nav .home-register,.home-create-account{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid #d6dfeb;border-radius:24px;padding:9px 18px;font-size:14px;color:#334155;letter-spacing:0}
.home-nav .home-register{background:#059669;color:#fff;border-color:#059669}
.home-create-account{margin-left:8px}.home-upload{text-decoration:none}.dark-button{text-decoration:none;display:inline-block}
.account-logout{display:inline-flex;margin:0}.account-name{font-size:12px;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body:has(.intro){margin:0;font-family:Arial,sans-serif;color:#182235;background:linear-gradient(115deg,#edf4f8,#f9fbff);min-height:100vh}
body:has(.intro) header{background:#fff;border-bottom:1px solid #e0e6ee;display:flex;justify-content:space-between;align-items:center;padding:22px max(24px,calc((100vw - 1160px)/2));gap:24px}
.brand{display:flex;align-items:center;gap:12px;color:#111827;text-decoration:none;font-size:25px}.brand span{font-size:12px;letter-spacing:3px;font-weight:700}.brand small{display:block;font-size:13px;letter-spacing:0;color:#64748b;font-weight:400;margin-top:7px}
body:has(.intro) nav{display:flex;align-items:center;gap:22px}body:has(.intro) nav a{color:#475569;text-decoration:none;font-size:14px}body:has(.intro) nav .register{background:#059669;color:#fff;padding:10px 20px;border-radius:24px}
body:has(.intro) main{max-width:1080px;margin:70px auto;padding:0 24px;display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}
.eyebrow{font-size:11px;letter-spacing:2.5px;color:#64748b;font-weight:600}.intro h1{font-size:48px;line-height:1.12;letter-spacing:-1.7px;margin:22px 0}.intro p{font-size:17px;color:#64748b;line-height:1.75}.intro ul{padding-left:20px;color:#334155;line-height:2.4}.intro .note{font-size:13px;line-height:1.7;max-width:420px}
.card{padding:34px;background:#fff;border:1px solid #dfe6ee;border-radius:26px;box-shadow:0 16px 40px #263d5c0a}.card h2{font-size:28px;letter-spacing:-.7px;margin:16px 0 10px}.card p{color:#64748b;font-size:14px;line-height:1.6}.card label{display:block;font-size:13px;font-weight:600;margin:20px 0;color:#334155}.card input:not([type=hidden]){box-sizing:border-box;display:block;width:100%;padding:12px 13px;margin-top:8px;border:1px solid #cbd5e1;border-radius:9px;font:16px Arial;background:#fff;color:#182235}.card input:focus{outline:2px solid #059669;outline-offset:2px}.card button{width:100%;padding:13px;background:#059669;color:#fff;border:0;border-radius:10px;font:600 15px Arial;cursor:pointer;margin-top:6px}.card .switch{margin-top:24px;text-align:center}.card a{color:#047857}.card .error{background:#fff1f2;color:#9f1239;border:1px solid #fecdd3;padding:12px;border-radius:10px}.card .notice{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;padding:12px;border-radius:10px}.password-help{color:#64748b;font-size:12px;display:block;margin-top:-10px}.card .forgot{text-align:right;font-size:13px;margin:8px 0 4px}
@media(max-width:760px){body:has(.intro) header{padding:18px;flex-wrap:wrap}.brand span{font-size:10px;letter-spacing:2px}body:has(.intro) main{display:block;margin:32px auto;padding:0 18px}.intro{margin-bottom:30px}.intro h1{font-size:36px}.intro ul,.intro .note{display:none}.card{padding:26px}.home-nav>div{flex-wrap:wrap}.home-create-account{margin:12px 0 0}}

/* Compact Galley Press wordmark. */
.home-brand{gap:9px;letter-spacing:0;color:#102744}.home-brand .home-logo{width:75px;height:75px;min-width:75px;background:transparent;border-radius:6px;object-fit:contain}.home-brand>span,.brand span{font:700 18px/1.2 Georgia,serif;letter-spacing:.3px;color:#102744}.home-brand small,.brand small{font:400 11px/1.4 Arial,sans-serif;color:#64748b;margin-top:3px}.brand{gap:9px}.brand img{width:75px;height:75px;flex:none}
