/* Customer branding and navigation shell. */
.product-head{min-height:88px;padding:18px 26px;background:linear-gradient(112deg,#163f35,#265c49);box-shadow:inset 0 -1px #ffffff12;gap:24px}
.customer-brand{display:flex;align-items:center;gap:16px;min-width:0;margin-right:auto}
.customer-brand h1{margin:0;color:#fff;font-size:30px;font-weight:650;line-height:1.35;letter-spacing:1px;overflow-wrap:anywhere}
.customer-logo{height:52px;width:52px;object-fit:contain;flex:none;border-radius:10px}
.product-head select{max-width:340px;min-width:160px;border-color:#ffffff45;background:#ffffffed}
.modules{position:relative;overflow:visible;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 26px;min-height:61px;background:#fff;box-shadow:0 2px 8px #163f3506;z-index:600}
.module-links{display:flex;align-items:center;gap:6px;min-width:0;overflow:auto;scrollbar-width:thin}
.module-links button{border:0;border-radius:7px;padding:10px 15px;color:#52665d;background:transparent;font-weight:500}
.module-links button:hover{background:#edf4ef;color:#285d46}
.module-links button.active{background:#e3efe7;color:#20593e;box-shadow:inset 0 -2px #357657}
.customer-session{display:flex;align-items:center;gap:22px;flex:none;margin-left:auto;color:#718078;font-size:13px;white-space:nowrap}
#customer-clock{font-variant-numeric:tabular-nums;letter-spacing:.2px}
.customer-account{position:relative;color:#294c3c}
.customer-account summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:9px;padding:9px 4px 9px 10px;border-radius:6px;max-width:180px;overflow:hidden;text-overflow:ellipsis;font-weight:600}
.customer-account summary::-webkit-details-marker{display:none}
.customer-account summary:after{content:'';width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:0 4px 4px 0;flex:none}
.customer-account summary:hover,.customer-account[open] summary{background:#f0f5f2}
.customer-account summary:focus-visible{outline:3px solid #cf972f;outline-offset:2px}
.customer-account-menu{position:absolute;top:calc(100% + 9px);right:0;min-width:136px;padding:6px;background:#fff;border:1px solid #e0e8e2;box-shadow:0 8px 28px #163f3526;border-radius:9px}
.customer-account-menu button{width:100%;border:0;background:transparent;text-align:left;padding:10px 12px;color:#485d52}
.customer-account-menu button:hover{background:#f1f6f2}
.branding-preview{display:flex;align-items:center;justify-content:center;min-height:104px;max-width:260px;background:#f1f5f2;border:1px dashed #cbd9ce;border-radius:8px;color:#718078}
.branding-preview img{max-width:220px;max-height:110px;padding:12px;object-fit:contain}
#branding-result{color:#9e443b;min-height:1.5em}
.managed-content h2{font-size:23px;letter-spacing:.5px}
.managed-content table{border-radius:10px;overflow:hidden;box-shadow:0 2px 14px #294c3c05}
.managed-content th{font-weight:600;color:#52695b}
.managed-content .list-tools button{border-color:#d3dfd5}
@media(max-width:1250px){.modules{gap:10px;padding:9px 18px}.module-links{gap:2px}.module-links button{padding:9px 10px;font-size:13px}.customer-session{gap:12px;font-size:12px}}
@media(max-width:1000px){.modules{flex-wrap:wrap;gap:5px}.module-links{flex:1;order:2;width:100%}.customer-session{width:100%;justify-content:flex-end}.customer-brand h1{font-size:26px}.product-head{padding:16px 20px}}
@media(max-width:760px){.product-head{padding:15px 16px;min-height:76px;flex-wrap:wrap;gap:12px}.customer-brand{gap:12px}.customer-brand h1{font-size:24px}.customer-logo{width:42px;height:42px}.product-head select{order:initial;max-width:100%;width:100%}.modules{padding:7px 12px}.module-links button{font-size:12px;padding:8px 10px}.customer-session{gap:14px}.customer-account summary{padding-top:6px;padding-bottom:6px}.managed-content h2{font-size:21px}}

/* Customer login shares the Shanhe identity while retaining each customer's name and logo. */
.customer-login-shell{min-height:100vh;min-height:100svh;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(420px,1fr);background:#fffefa;color:#163e32}
.customer-login-story{position:relative;display:flex;flex-direction:column;min-height:100vh;box-sizing:border-box;padding:46px 8% 30px;background:#faf8f1;border-right:1px solid #e7e9df;overflow:hidden}
.customer-login-wordmark{width:178px;height:75px;object-fit:contain;object-position:left center}.customer-login-landscape{flex:1;min-height:220px;display:flex;align-items:center;justify-content:center;margin:-22px -6%}.customer-login-landscape img{display:block;width:min(90%,500px);max-height:39vh;object-fit:contain}
.customer-login-promise{position:relative;padding-bottom:38px}.customer-login-kicker{display:block;font-size:12px;font-weight:500;letter-spacing:2px;color:#608273;margin:0 0 18px}.customer-login-promise h1{font-size:clamp(26px,2.5vw,40px);font-weight:500;line-height:1.55;letter-spacing:1px;margin:0 0 19px;text-wrap:balance}.customer-login-promise>p{color:#74877a;max-width:460px;font-size:14px;line-height:1.8;letter-spacing:.4px;margin:0;text-wrap:balance}.customer-login-story-foot{display:flex;align-items:center;gap:22px;color:#859284;font-size:10px;letter-spacing:1px}.customer-login-story-foot i{height:1px;flex:1;background:#dce3d7}
.customer-login-access{position:relative;display:flex;align-items:center;justify-content:center;padding:76px 48px 90px;box-sizing:border-box}.customer-login-shell .login{width:100%;max-width:368px;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;box-sizing:border-box}.customer-login-form-mark{width:30px;height:4px;background:#228365;border-radius:3px;margin-bottom:30px}.customer-login-shell .login>.customer-login-kicker{font-size:14px;line-height:1.9;letter-spacing:.5px;margin-bottom:16px;text-wrap:balance}.customer-login-shell .login-brand{display:flex;align-items:center;gap:14px;margin-bottom:14px}.customer-login-shell .login-brand img{width:48px;height:48px;object-fit:contain;flex:none}.customer-login-shell .login-brand h2{font-size:28px;font-weight:600;line-height:1.5;letter-spacing:.5px;margin:0;overflow-wrap:anywhere}.customer-login-intro{font-size:12px;color:#7d8c82;line-height:1.8;margin:0 0 32px}.customer-login-shell .login label{display:block;font-size:12px;margin:22px 0 10px;font-weight:500;color:#365747}.customer-login-shell .login input{width:100%;height:50px;box-sizing:border-box;background:#fff;border:1px solid #dce4dc;border-radius:7px;padding:13px 15px;font-size:14px;margin:0;color:#193e31}.customer-login-shell .login input::placeholder{color:#a4afa7;font-size:12px}.customer-login-shell .login input:focus{outline:none;border-color:#228365;box-shadow:0 0 0 3px #22836515}.customer-login-shell .login button.primary{display:flex;align-items:center;justify-content:space-between;width:100%;height:50px;margin-top:30px;padding:0 19px;background:#17664f;border:1px solid #17664f;border-radius:7px;color:#fff;letter-spacing:1px;font-size:14px;cursor:pointer}.customer-login-shell .login button.primary:hover{background:#10553f;box-shadow:0 4px 14px #17664f18}.customer-login-shell .login button.primary:focus-visible{outline:3px solid #96bcaa;outline-offset:3px}.customer-login-shell #login-error{color:#ad5143;font-size:12px;line-height:1.7;overflow-wrap:anywhere;margin:12px 0 0}.customer-login-shell #login-error:empty{display:none}.customer-login-help{margin-top:26px;padding-top:20px;border-top:1px solid #e7ece5;color:#8b968d;font-size:11px;line-height:1.8}.customer-login-help p{margin:0 0 7px}.customer-login-access-foot{position:absolute;bottom:29px;color:#9ba49b;font-size:10px;letter-spacing:1px}
@media(min-width:1600px){.customer-login-story{padding-left:12%;padding-right:12%}.customer-login-promise{padding-bottom:54px}}
@media(max-height:760px) and (min-width:801px){.customer-login-story{padding-top:28px;padding-bottom:24px}.customer-login-landscape{min-height:160px;margin:-24px 0}.customer-login-landscape img{max-height:36vh}.customer-login-promise{padding-bottom:28px}.customer-login-promise h1{font-size:30px}.customer-login-access{padding-top:42px;padding-bottom:64px}}
@media(max-width:800px){.customer-login-shell{grid-template-columns:minmax(0,1fr)}.customer-login-story{min-height:0;padding:25px 28px 23px;border-right:0;border-bottom:1px solid #e7e9df}.customer-login-wordmark{width:136px;height:57px}.customer-login-landscape,.customer-login-story-foot,.customer-login-promise>.customer-login-kicker{display:none}.customer-login-promise{padding:18px 0 0}.customer-login-promise h1{font-size:24px;line-height:1.6;letter-spacing:1px;margin:0 0 8px}.customer-login-promise>p{font-size:11px;line-height:1.75;max-width:340px;letter-spacing:.2px}.customer-login-access{padding:34px 28px 74px}.customer-login-shell .login{max-width:380px}.customer-login-form-mark{display:none}.customer-login-shell .login-brand h2{font-size:24px}.customer-login-intro{margin-bottom:28px}.customer-login-access-foot{bottom:22px}}
