/* The private app entry point: one member action, with public content elsewhere. */
*{box-sizing:border-box;margin:0;padding:0;}
body{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;
  font-family:'Host Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:#080218;color:#151025;line-height:1.5;-webkit-font-smoothing:antialiased;}
a{color:#9a3600;text-underline-offset:4px;}
:focus-visible{outline:2px solid #9a3600;outline-offset:4px;}
/* Match the public site's footer halo: brand navy, orange glow and drifting warm core. */
.entry-backdrop{position:fixed;inset:0;overflow:hidden;pointer-events:none;background:#080218;}
.entry-halo{position:absolute;left:14%;top:calc(38% - 185px);width:370px;height:370px;
  border-radius:50%;background:radial-gradient(circle,#fc9704e6 18%,#fa7e05bd 58%,#fc970400 75%);
  filter:blur(38px);opacity:.52;overflow:hidden;
  animation:entry-halo-drift 36s ease-in-out infinite;animation-delay:-4s;}
.entry-halo::after{content:"";position:absolute;width:54%;height:54%;top:23%;left:23%;border-radius:50%;
  background:radial-gradient(circle at 35% 32%,#fff3b9 5%,#ffcd65 38%,#ffa80c99 68%,transparent 78%);
  filter:blur(12px);animation:entry-halo-core-drift 24s ease-in-out infinite;animation-delay:-2s;}
@keyframes entry-halo-drift{
  0%,100%{transform:translate3d(-45px,25px,0) scale(.82);}
  35%{transform:translate3d(clamp(150px,33vw,460px),-55px,0) scale(1.2);}
  70%{transform:translate3d(clamp(90px,19vw,290px),65px,0) scale(.95);}
}
@keyframes entry-halo-core-drift{
  0%,100%{transform:translate(-24%,19%) scale(.84);}
  33%{transform:translate(34%,-24%) scale(1.16);}
  66%{transform:translate(-12%,-38%) scale(.9);}
}
.entry-header,main,.entry-footer{position:relative;}
.entry-header{display:flex;align-items:center;
  width:min(1080px,100%);margin:0 auto;padding:26px 24px;}
.entry-header img{display:block;width:158px;height:auto;}
main{display:grid;place-items:center;flex:1;padding:24px;}
.entry-card{width:100%;max-width:520px;padding:32px 40px;background:#fff;text-align:center;
  border:1px solid #e7ddd1;border-radius:20px;box-shadow:0 24px 80px #03081740;}
.entry-badge{display:block;width:112px;height:112px;margin:0 auto 24px;}
h1{font-size:38px;line-height:1.15;font-weight:800;letter-spacing:normal;margin-bottom:28px;}
.entry-description{font-size:16px;color:#6b6056;line-height:1.65;margin-bottom:28px;overflow-wrap:anywhere;}
.entry-description strong{color:#151025;font-weight:600;}
.entry-button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:52px;
  border:1px solid #eb941b;border-radius:10px;padding:13px 18px;cursor:pointer;
  color:#17120c;font:inherit;font-size:16px;font-weight:700;text-decoration:none;text-align:center;
  background:linear-gradient(120deg,#ffbd4c 0%,#ff981f 48%,#ff741e 100%);
  background-size:150% 150%;background-position:0% 50%;
  box-shadow:inset 0 1px 0 #ffffff50,0 4px 12px #d85b001a;
  transition:background-position .2s,box-shadow .2s;}
.entry-button:hover{background-position:100% 50%;box-shadow:inset 0 1px 0 #ffffff50,0 6px 16px #d85b0029;}
.slack-glyph{width:20px;height:20px;flex:none;}
.access-note{font-size:12px;color:#6b6056;margin-top:16px;}
.access-note a{display:block;width:fit-content;margin:4px auto 0;font-weight:600;}
.public-site-link{border-top:1px solid #eee7de;margin-top:24px;padding-top:20px;}
.public-site-button{display:flex;align-items:center;justify-content:center;gap:14px;padding:16px;
  border:1px solid #e7ddd1;border-radius:10px;background:#faf7f3;color:#151025;
  font-size:14px;font-weight:600;text-decoration:none;text-align:center;
  transition:background-color .2s,border-color .2s;}
.public-site-button:hover{background:#fff4df;border-color:#d8b777;}
.site-globe{width:26px;height:26px;flex:none;}
.site-arrow{width:20px;height:20px;flex:none;}
.entry-notice,.entry-messages{background:#fff7e9;border:1px solid #ebd4af;border-radius:10px;
  padding:16px;margin-bottom:24px;font-size:14px;color:#6b4c21;overflow-wrap:anywhere;text-align:left;}
.entry-notice h2{font-size:17px;line-height:1.35;margin-bottom:7px;color:#151025;}
.entry-notice a{display:inline-block;margin-top:10px;}
.entry-error{background:#fff4ef;border-color:#e9c1b2;}
.entry-messages{list-style:none;}
.entry-messages li+li{margin-top:8px;}
.entry-footer{margin-top:auto;padding:24px;text-align:center;color:#b6bfd0;}
.entry-footer img{display:block;height:22px;width:auto;margin:0 auto 10px;}
.entry-footer .tagline{font-size:12px;}
.entry-footer .legal{font-size:11px;margin-top:10px;}
.skip-link{position:absolute;top:-80px;left:16px;z-index:10;padding:12px 18px;
  background:#fff;border:1px solid #d6cabe;border-radius:8px;}
.skip-link:focus{top:12px;}
@media(max-width:650px){
  .entry-halo{left:-80px;top:calc(22% - 145px);width:290px;height:290px;filter:blur(35px);}
}
@media(max-width:480px){
  .entry-header{padding:20px;}
  .entry-header img{width:138px;}
  main{padding:24px 16px;}
  .entry-card{padding:28px 22px;border-radius:16px;}
  .entry-badge{width:96px;height:96px;margin-bottom:20px;}
  h1{font-size:30px;}
  .entry-description{font-size:15px;}
  .entry-button{font-size:15px;padding:13px 12px;}
  .public-site-button{padding:14px 12px;gap:10px;font-size:13px;}
  .site-globe{width:22px;height:22px;}
}
@media(prefers-reduced-motion:reduce){
  .entry-halo,.entry-halo::after{animation:none;}
  .entry-button,.public-site-button{transition:none;}
}
