/* thread "Zescor Solutions": the team's install page (/zescor/get/<ws>-<k>), in the company's colour (--zg) */
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body{background:#f4f1ea;color:#1f1c17;font:16px/1.5 Jost,"Avenir Next",system-ui,sans-serif;-webkit-text-size-adjust:100%}
.zg{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px calc(24px + env(safe-area-inset-bottom));
  background:radial-gradient(120% 60% at 50% 0%,color-mix(in srgb,var(--zg) 22%,#f4f1ea) 0%,#f4f1ea 70%)}
.zg-card{width:100%;max-width:440px;background:#fff;border:1px solid color-mix(in srgb,var(--zg) 25%,#e3ddd0);border-radius:20px;padding:28px 22px 22px;text-align:center;
  box-shadow:0 20px 60px -24px color-mix(in srgb,var(--zg) 60%,transparent)}
.zg-k{font:600 12px/1 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--zg);margin:0 0 18px}
.zg-ic{width:112px;height:112px;border-radius:26px;display:block;margin:0 auto 16px;box-shadow:0 10px 30px -10px rgba(0,0,0,.45);background:#fff;object-fit:cover}
h1{font-size:26px;line-height:1.2;margin:0 0 6px;font-weight:600;word-break:break-word}
.zg-line{margin:0 0 20px;color:#6b6457;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.zg-act{display:flex;flex-direction:column;gap:10px;margin:0 0 18px}
.zg-btn{display:flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 18px;border-radius:12px;border:0;background:var(--zg);color:#fff;
  font:600 17px/1.2 inherit;font-family:inherit;text-decoration:none;cursor:pointer;width:100%}
.zg-btn.ghost{background:transparent;color:var(--zg);border:1.5px solid var(--zg)}
.zg-btn svg{width:22px;height:22px;flex:none}
.zg-note{background:color-mix(in srgb,var(--zg) 8%,#fff);border:1px solid color-mix(in srgb,var(--zg) 22%,#fff);border-radius:12px;padding:12px 14px;text-align:left;font-size:15px}
.zg-note ol{margin:6px 0 0;padding-left:20px}.zg-note li{margin:0 0 4px}
.zg-ok{color:#2f7a4b;font-weight:600}
.zg-steps{text-align:left;margin:0 0 14px;padding:14px 14px 14px 34px;border-top:1px dashed #ddd5c5;font-size:14px;color:#4a4439}
.zg-steps li{margin:0 0 4px}
.zg-alt{margin:0;font-size:14px}.zg-alt a{color:var(--zg);font-weight:500}
.zg-foot{margin:16px 0 0;font:12px "IBM Plex Mono",ui-monospace,monospace;color:#8a8273;letter-spacing:.06em}
/* the sign-in of Zescor's own address (/zescor/signin) */
.zs-si .zg-ic{width:96px;height:96px;border-radius:22px}
.zs-f{display:flex;flex-direction:column;gap:6px;text-align:left;margin:0 0 14px}
.zs-f label{font-size:14px;font-weight:500;color:#4a4439;margin-top:6px}
.zs-f input,.zs-fgr input{width:100%;min-height:48px;padding:10px 12px;border:1.5px solid #cfc7b6;border-radius:10px;font:16px Jost,system-ui,sans-serif;color:#1f1c17;background:#fff}
.zs-f input:focus,.zs-fgr input:focus{outline:none;border-color:var(--zg);box-shadow:0 0 0 3px color-mix(in srgb,var(--zg) 25%,transparent)}
.zs-pw{position:relative}.zs-pw input{padding-right:76px}
.zs-pw button{position:absolute;right:4px;top:2px;min-height:44px;min-width:64px;border:0;background:transparent;color:var(--zg);font:600 14px Jost,system-ui,sans-serif;cursor:pointer}
.zs-f .zg-btn{margin-top:12px}.zs-f .zg-btn:disabled{opacity:.7}
.zs-err{margin:6px 0 0;padding:10px 12px;border-radius:10px;background:#fbeceb;color:#8c2a22;font-size:14px}
.zs-pick{display:flex;flex-direction:column;gap:10px;text-align:left;margin:0 0 14px}.zs-pq{margin:0;font-weight:600}
.zs-acc{display:flex;align-items:center;gap:12px;min-height:60px;padding:10px 12px;border:1.5px solid #ddd5c5;border-radius:12px;background:#fff;cursor:pointer;text-align:left;font:15px Jost,system-ui,sans-serif;color:#1f1c17}
.zs-acc img,.zs-in{width:40px;height:40px;border-radius:50%;flex:none;object-fit:cover;background:color-mix(in srgb,var(--zg) 18%,#fff);display:grid;place-items:center;font-weight:600;color:var(--zg)}
.zs-acc span{flex:1;min-width:0}.zs-acc b{display:block}.zs-acc small{color:#6b6457}.zs-acc i{font-style:normal;color:var(--zg);font-size:20px}
.zs-fg{text-align:left;border-top:1px dashed #ddd5c5;padding-top:12px;font-size:14px}.zs-fg summary{cursor:pointer;color:var(--zg);font-weight:500;min-height:44px;display:flex;align-items:center}
.zs-fg p{margin:6px 0 10px;color:#4a4439}.zs-fgr{display:flex;gap:8px}.zs-fgr .zg-btn{width:auto;min-height:48px;padding:10px 16px;font-size:15px}.zs-fs{min-height:1em}
.zg-ic.zg-logo{object-fit:contain;padding:12px;box-sizing:border-box}
