.fsu{position:relative;max-width:460px;margin:0 auto;min-height:520px;display:flex;flex-direction:column;justify-content:center}.fsu-header{display:flex;align-items:center;gap:.9rem;margin-bottom:1rem}.fsu-step{color:var(--pytune-gold);font-weight:600;letter-spacing:.35em}.fsu-header h3{color:var(--pytune-gold)}.pytune-logo-left{width:128px;height:auto;flex-shrink:0;filter:drop-shadow(0 6px 14px rgba(0,0,0,.45));opacity:.95}.fsu-close{position:absolute;top:.5rem;right:.5rem;background:none;border:none;color:var(--pytune-green-soft);font-size:1.25rem;cursor:pointer;z-index:1}.pytune-logo{width:96px;height:auto;margin:0 auto .6rem;display:block;filter:drop-shadow(0 6px 14px rgba(0,0,0,.45));opacity:.95}.oauth-stack{display:grid;gap:.45rem;margin:.8rem 0}.oauth-btn{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.6rem;border-radius:999px;background:color-mix(in srgb,var(--pytune-blue) 12%,var(--pytune-bg-elevated) 88%);border:1px solid color-mix(in srgb,var(--pytune-blue) 40%,transparent);color:var(--pytune-blue);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.oauth-btn:hover{background:color-mix(in srgb,var(--pytune-blue) 20%,var(--pytune-bg-elevated) 80%);border-color:var(--pytune-blue)}.oauth-btn img{width:16px;height:16px;filter:brightness(0) invert(1);opacity:.9}.or-soft{text-align:center;font-size:.7rem;color:var(--pytune-text-subtle);margin:.6rem 0}.fsu-actions{display:grid;gap:.55rem}.fsu-actions input{background:#ffffff14;border:1px solid var(--pytune-border-soft);border-radius:12px;padding:.65rem .75rem;color:var(--pytune-text-primary)}.submit{width:100%;margin-top:.4rem}.tiny{text-align:center;font-size:.65rem;opacity:.8}.check{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--pytune-text-muted)}.check input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--pytune-green)}.link-soft{background:none;border:none;padding:0;margin:.3rem 0;font-size:.8rem;font-weight:400;color:var(--pytune-blue);text-decoration:underline;cursor:pointer}.link-soft:hover{color:var(--pytune-green-soft);text-decoration:underline}.link-soft:visited{color:var(--pytune-blue)}.error{background:#4a1515;border:1px solid #ff6b6b66;color:#ffbcbc;padding:.4rem;border-radius:8px;font-size:.75rem;text-align:center}
