/* Sign-in layout: fluid panels, natural page scrolling, and shared brand tokens. */
.signin-footer-brand{display:none}
.signin-mode{background:var(--hdc-sand-tint)}
.signin-mode .topbar,.signin-mode .intro,.signin-mode .account{display:none}
.signin-mode main{width:100%;max-width:none;margin:0;padding:1.25rem 0 0}
.signin-mode #surface{min-width:0}
.signin-mode .footer{display:flex;justify-content:center;align-items:center;min-height:7rem;margin:0;padding:1.5rem;border-top:1px solid var(--hdc-line);background:var(--hdc-sand-tint)}
.signin-mode .footer-default{display:none}
.signin-mode .signin-footer-brand{display:flex;gap:.75rem;align-items:center;justify-content:center;flex-wrap:wrap;max-width:100%;min-width:0;text-align:left}
.signin-mode .signin-footer-brand>div{min-width:0;overflow-wrap:anywhere}
.signin-mode .signin-footer-brand strong{font-size:1.5rem;line-height:1.3}
.signin-mode .signin-footer-brand small{font-size:.6875rem;line-height:1.5;letter-spacing:.1em}

.signin-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-height:calc(100svh - 8.25rem)}
.signin-story,.signin-entry{min-width:0;padding:2.5rem clamp(2rem,5vw,6rem);overflow-wrap:anywhere}
.signin-story{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--hdc-indigo);color:var(--hdc-white);text-align:center}
.signin-brand-logo{display:block;width:clamp(12rem,min(22vw,28svh),17.5rem);max-width:100%;height:auto;aspect-ratio:1;object-fit:contain;flex-shrink:0;margin-bottom:1.5rem}
.signin-story-copy{width:100%;max-width:29rem}
.signin-kicker{font-size:.8125rem;font-weight:600;line-height:1.6;letter-spacing:.03em;color:var(--hdc-sky)}
.signin-story h2{font-size:clamp(2rem,3.5vw,3.25rem);line-height:1.15;letter-spacing:-.025em;margin:1rem 0 1.25rem;color:inherit}
.signin-story-copy>p:last-child{max-width:25rem;margin-inline:auto;font-size:1rem;line-height:1.75;color:var(--hdc-on-dark-muted)}
.signin-story-footer{margin-top:2rem;font-size:.8125rem;line-height:1.6;letter-spacing:.06em;color:var(--hdc-on-dark-muted)}

.signin-entry{display:flex;align-items:center;justify-content:center;background:var(--hdc-white)}
.signin-entry-inner{width:100%;max-width:24rem;min-width:0}
.signin-entry .eyebrow{font-size:.75rem;line-height:1.6;letter-spacing:.1em;color:var(--hdc-indigo)}
.signin-entry h1{color:var(--hdc-indigo);font-size:clamp(2rem,3.7vw,3.125rem);letter-spacing:-.025em;line-height:1.15;margin:1rem 0 1.25rem}
.signin-description{color:var(--hdc-muted);font-size:1rem;line-height:1.75;margin-bottom:2rem}
.signin-entry #microsoft-signin{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;min-height:3.375rem;padding:.875rem 1rem;background:var(--hdc-indigo);color:var(--hdc-white);border:1px solid var(--hdc-indigo);border-radius:.75rem;font-size:.9375rem;line-height:1.5;white-space:normal}
.signin-button-label{min-width:0;overflow-wrap:anywhere;text-align:center}
.signin-button-arrow{flex-shrink:0;margin-left:auto;font-size:1.3125rem;line-height:1}
.signin-entry #microsoft-signin:focus-visible{outline:3px solid var(--hdc-indigo);outline-offset:4px}
.signin-entry #microsoft-signin:disabled{opacity:1;cursor:wait}
.microsoft-mark{display:grid;grid-template-columns:repeat(2,8px);gap:2px;flex-shrink:0}
.microsoft-mark i{width:8px;height:8px;background:currentColor}
.signin-account-hint{text-align:center;color:var(--hdc-muted);font-size:.8125rem;line-height:1.6;margin-top:.875rem}
.signin-entry #signin-message{line-height:1.6;color:var(--hdc-brick-ink);font-size:.875rem;overflow-wrap:anywhere;margin-top:.875rem}
.signin-entry #signin-message:empty{display:none}
.signin-note{display:flex;gap:.875rem;align-items:flex-start;border-top:1px solid var(--hdc-line);margin-top:2.375rem;padding-top:1.375rem;color:var(--hdc-muted);font-size:.8125rem;line-height:1.8}
.signin-note strong{color:var(--hdc-indigo);font-weight:600}
.signin-note>span{background:var(--hdc-sunshine);color:var(--hdc-indigo);border-radius:50%;height:2rem;width:2rem;display:grid;place-items:center;flex-shrink:0;font-size:1.1875rem}
.signin-note p{min-width:0}

@media(max-width:48rem){
  .signin-layout{grid-template-columns:minmax(0,1fr);min-height:0}
  .signin-story,.signin-entry{padding:2.5rem clamp(1rem,5vw,1.5rem)}
  .signin-brand-logo{width:12rem;margin-bottom:1rem}
  .signin-story h2{font-size:2rem}
  .signin-story-footer{margin-top:1.5rem}
  .signin-entry h1{font-size:2.25rem}
  .signin-button-arrow{display:none}
}
@media(forced-colors:active){
  .signin-brand-logo{background:var(--hdc-indigo);forced-color-adjust:none}
  .signin-entry #microsoft-signin:focus-visible{outline-color:Highlight}
}
